当我alloc
在我创建的类上使用时(例如在具有底层NSMutableArray
对象的堆栈类上)它会将 alloc 应用于它的所有属性吗?还是我必须重写该alloc
方法以确保alloc
在属性上调用 ?
问问题
196 次
3 回答
2
不会为您分配所有属性。
但是,不要为此覆盖 alloc,覆盖 init 以分配和初始化属性。
于 2012-09-16T20:47:28.947 回答
2
您不需要重写 alloc 方法,属性将为您初始化为它们的默认值,即对象为 nil,原始类型为默认值。
所以你需要做的就是:
[[myObject alloc] init]; or the shortcut [myObject new];
您不能覆盖 alloc 方法,所有属性都将设置为其默认值。但是,您可以覆盖 init,将初始值设置为属性(而不是它们的默认值):
- (id) init {
self = [super init];
if (self) {
//initialize some properties
}
return self;
}
于 2012-09-16T20:48:10.863 回答
1
通常,不会为您分配属性。但是,您在 IB 中添加并设置为网点的网点将自动创建。
于 2012-09-16T20:44:31.147 回答