質問

一定のクストリングは、ヒープではなく静的に割り当てられていることを理解しています。

また、一定のnsstringが無限の保持カウントを持っていることに気付きました。一定のnsstringがヒープではなく静的に割り当てられていることは真実ですか?

役に立ちましたか?

解決

一定のnsstringsはクラスです NSConstantString, 、したがって、LISPの原子のように作用します。彼らはぶらぶらしています。 - > NSConstantStrings 静的に割り当てられます。 つまり、使用する場合です @"cow" コード内の2つの別々の場所では、それらはまったく同じオブジェクトを参照します。

その理由 NSConstantStrings 保持カウントを持っていることでさえ、彼らが継承しているからです NSObject.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top