恒NSString的在哪里分配?(Where are constant NSStrings allo

2019-10-21 11:42发布

据我所知,不断CStrings是静态分配的,而不是在堆上。

我还注意到,恒定的NSString的具有无限的保留计数。 是否持有真实的恒定NSString的也被分配静态的,而不是在堆上?

Answer 1:

恒定NSString的是类的NSConstantString ,从而像在口齿不清原子; 他们流连。 - > NSConstantStrings是静态分配的。 也就是说,如果你使用@"cow"在两个不同的地方在你的代码,他们将引用相同的对象。

之所以NSConstantStrings甚至有一个保留计数是因为他们继承NSObject



文章来源: Where are constant NSStrings allocated?