objective-c – 对于私有变量使用@properties是否“坏”只是为了
发布时间:2020-12-16 05:38:46 所属栏目:百科 来源:网络整理
导读:为私有变量创建@properties是不好用于内存管理的好处? 对于许多私有变量来说,公开面对@properties似乎是混乱和错误的. (主要是使用相应的“事件”方法,在低内存条件下释放私人ivars.) 例: 我通常这样做来释放一个私人的ivar: [name release]; name = nil;
为私有变量创建@properties是不好用于内存管理的好处?
对于许多私有变量来说,公开面对@properties似乎是混乱和错误的. (主要是使用相应的“事件”方法,在低内存条件下释放私人ivars.) 例: [name release]; name = nil; 但是,在@properties中,我可以这样做: self.name = nil; 后来在我的代码中,会做到这一点,因此需要设置为nil: if( !name) name = [[NSString alloc] initWithFormat:@"Hi %@",inputName]; 解决方法
另一种办法是保持私有财产.您可以使用以下代码(在.m文件中)使属性仅在类中可访问:
#import "MyClass.h" @interface MyClass () @property (retain) NSString* privateString; @end @implementation MyClass @synthesize privateString; // Your code here @end 现在,您已经拥有了一个属性的简便性,但是其他类仍然无法访问它,即使它们导入了.h文件! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |