回答你的第一个问题:
是的,保留计数是两个.
回答你的第二个问题:
使用原因:
self.myString = x;
这相当于:
[self setMyString:x];
这样就可以正确执行所有属性处理代码.这包括KVO通知,以及在传入时自动保留x的代码.
如果您只是设置:
myString = x;
在.m文件中,您将绕过所有隐藏的属性设置代码,并简单地将myString成员变量设置为指向x的指针.
回答你的第一个问题:
是的,保留计数是两个.
回答你的第二个问题:
使用原因:
self.myString = x;
这相当于:
[self setMyString:x];
这样就可以正确执行所有属性处理代码.这包括KVO通知,以及在传入时自动保留x的代码.
如果您只是设置:
myString = x;
在.m文件中,您将绕过所有隐藏的属性设置代码,并简单地将myString成员变量设置为指向x的指针.