gpt4 book ai didi

objective-c - 综合中的奇怪分配

转载 作者:行者123 更新时间:2023-12-01 17:44:55 25 4
gpt4 key购买 nike

我看过很多这样的代码

头文件

@interface Foo : NSObject
{
NSString *str;
}

@property(nonatomic, retain) NSString *str;
@end

然后实施
@implementation Foo
@synthesize str = _str;
@end

我不明白使用这种分配有什么好处?
@synthesize str = _str;

最佳答案

这只是一个常见的命名约定。

这样,在您的实现中,您可以区分直接访问变量与通过属性访问器进行访问。

如果您尝试在代码中访问str,例如[str length],则代码将无法编译。您需要执行[self.str长度]或[_str长度]。

...并且因为它是NSString不可变的属性,所以请使用copy而不是retain

关于objective-c - 综合中的奇怪分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9036334/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com