objective-c – 对于私有变量使用@properties是否“坏”只是为了内存管理的好处?

前端之家收集整理的这篇文章主要介绍了objective-c – 对于私有变量使用@properties是否“坏”只是为了内存管理的好处?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
为私有变量创建@properties是不好用于内存管理的好处?

对于许多私有变量来说,公开面对@properties似乎是混乱和错误的.

(主要是使用相应的“事件”方法,在低内存条件下释放私人ivars.)

例:
我通常这样做来释放一个私人的ivar:

[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文件

原文链接:https://www.f2er.com/c/114130.html

猜你在找的C&C++相关文章