Где постоянный NSStrings выделяется?

Я понимаю, что постоянный CStrings выделяется статически, а не на "куче".

Я также заметил, что у постоянного NSStrings есть большое количество, сохраняют количество. Это сохраняется, что постоянный NSStrings также выделяется статически, а не на "куче"?

1
задан Andrew Toulouse 4 May 2010 в 19:38
поделиться

1 ответ

Константы NSStrings относятся к классу NSConstantString, и поэтому ведут себя как атомы в lisp; они висят вокруг. -> NSConstantStrings выделяются статически. То есть, если вы используете @"cow" в двух разных местах вашего кода, они будут ссылаться на один и тот же объект.

Причина, по которой NSConstantStrings вообще имеют счетчик retain, заключается в том, что они наследуются от NSObject.

2
ответ дан 3 September 2019 в 00:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: