在Cocoa中使用 - >

Stu*_* mc 7 cocoa objective-c

我习惯于为几乎所有东西创建属性.可能太多,给出了.我也使用实例变量,但我没有引用它们self->myvar而是仅仅引用它们myvar.

我最近接触过一个代码,使用了很多self->我曾经使用过的属性.当我说我使用@property(保留)的原因之一是因为我不想明确保留我的对象时,我被告知我"懒惰".这可能是真的,但也是我想避免我忘记保留的错误.

无论如何,一般来说,你们->在Cocoa代码中有什么想法?

Pet*_*sey 6

懒惰是一种美德.

我使用->copyWithZone:,访问该副本的实例变量.(我在这里不使用属性访问器的原因与我不使用它们的原因相同init或者dealloc- 它们可能会触发半初始化副本中不好的副作用.)我也在self->这种情况下使用因为我喜欢这种方式这是:

other->foo = [self->foo copy];
other->bar = [self->bar copy];
other->baz = self->baz; //Non-object or object not owned (may be omitted entirely in the latter case)
Run Code Online (Sandbox Code Playgroud)

我想不出我->在对象上使用的另一个上下文.