为私有变量创建@properties是不好用于内存管理的好处?
对于许多私有变量来说,公开面对@properties似乎是混乱和错误的.
(主要是使用相应的“事件”方法,在低内存条件下释放私人ivars.)
例:
我通常这样做来释放一个私人的ivar:
[name release]; name = nil;
但是,在@properties中,我可以这样做:
self.name = nil;
后来在我的代码中,会做到这一点,因此需要设置为nil:
if( !name) name = [[NSString alloc] initWithFormat:@"Hi %@",inputName];@H_404_19@
解决方法
另一种办法是保持私有财产.您可以使用以下代码(在.m文件中)使属性仅在类中可访问:
#import "MyClass.h" @interface MyClass () @property (retain) NSString* privateString; @end @implementation MyClass @synthesize privateString; // Your code here @end
现在,您已经拥有了一个属性的简便性,但是其他类仍然无法访问它,即使它们导入了.h文件!
@H_404_19@ @H_404_19@ 原文链接:https://www.f2er.com/c/114130.html