是否可以在Objective-C中创建私有属性?

问题描述:

是否可以在Objective-C中创建私有属性? 我知道一种私有财产功能可以用另一种方式实现,但我对特定问题感兴趣。 谢谢。是否可以在Objective-C中创建私有属性?

+0

我希望做同样的事情。我想隐藏包含在一个类中的特定变量的所有保留/释放代码,但该变量不是公开的。 – Brain2000 2011-11-04 01:28:15

+0

JFYI,现在与iOS SDK 5 ARC,你不需要关心保留和释放:) – knuku 2011-11-04 08:29:31

+0

这就是我听到的,我很高兴看到。对不起,下车话题。 – Brain2000 2011-11-14 14:32:40

是的,你可以,但代码看起来有点奇怪。如果你把它只会给你一些警告,你有你的实现文件的.m检查警告自己

@interface YourObject() 

@property (nonatomic, retain) NSMutableArray *infoArray; 

@end 
+0

甚至这个解决方案也不会创建真正的私有属性,因为它可以被外部代码访问。即使没有警告,如果通过setValue调用:forKey: – Gobra 2010-09-08 09:44:02

+0

你是什么意思?如果我调用YourObject * obj = // alloc init;然后obj.infoArray,它会给我警告。你在做KVO? – vodkhang 2010-09-08 09:46:51

+0

@vodkhang:你为什么说代码看起来很奇怪?对我来说这看起来很正常。 – JeremyP 2010-09-08 09:53:25