何时将ivars定义为指针?

时间:2010-06-09 13:32:45

标签: objective-c interface

有人可以向我解释何时需要将ivars定义为指针?

我见过许多不使用指针的代码示例,而其他代码示例则是。

1 个答案:

答案 0 :(得分:2)

ivars定义取决于实例变量的类型。

根据经验(出于一般目的):

  • 对于基本类型(BOOL,short,int或long)或结构(NSRange,CGRect等),您应该直接使用它们的值(无指针)。分配由价值复制完成。
  • 对于类实例,您应该使用指针来引用它们。

@interface ClassName : NSObject
{
    // instance variable declarations

    float width;
    float height;
    BOOL filled;
    CGRect rect;

    NSColor *fillColor;
    NSView *view;
}

// method declarations

@end