Вам, как программисту, не нужно беспокоиться о точном значении сохраняемого количества (в основном). Вы должны отслеживать, какие объекты принадлежат другим.
В вашем коде, где вы получаете, сохраняется количество r1 & r2 ....
Ничему не принадлежит temp, он был создан с помощью метода класса (+ method), поэтому он будет освобожден при следующей очистке пула автоматического выпуска.
card1 владеет своим «именем»
, когда вы устанавливаете [card2 setName:temp];
, когда card2 принадлежит темп. Он больше не находится под угрозой уничтожения при следующем выпуске пула.