Objective c 在线上分配多个对象?

Objective c 在线上分配多个对象?,objective-c,Objective C,StockHolding是我自己的类名,我想创建3个实例变量。代码的工作副本如下所示: StockHolding *stock0 = [[StockHolding alloc] init]; StockHolding *stock1 = [[StockHolding alloc] init]; StockHolding *stock2 = [[StockHolding alloc] init]; StockHolding *stock0, *stock1, *stock2 = [[StockH

StockHolding
是我自己的类名,我想创建3个实例变量。代码的工作副本如下所示:

StockHolding *stock0 = [[StockHolding alloc] init];
StockHolding *stock1 = [[StockHolding alloc] init];
StockHolding *stock2 = [[StockHolding alloc] init];
StockHolding *stock0, *stock1, *stock2 = [[StockHolding alloc] init];
但我的代码第一次是这样的:

StockHolding *stock0 = [[StockHolding alloc] init];
StockHolding *stock1 = [[StockHolding alloc] init];
StockHolding *stock2 = [[StockHolding alloc] init];
StockHolding *stock0, *stock1, *stock2 = [[StockHolding alloc] init];
这对我来说是行不通的:(

我知道我可以通过以下方式创建多个float/int变量:

float *x, *y, *z;

所以我的问题是,有没有任何方法可以让Objective-C中的多实例变量以这种方式分配?

什么?即使在C中,你也不能这样做

int a, b, c = 3; //C is equal to 3, A and B has not been init yet

在C中只保留一个空地址。除非为指针分配内存,否则不能对指针应用任何内容。Objective-C也是如此。

什么?即使在C中也不能这样做

int a, b, c = 3; //C is equal to 3, A and B has not been init yet
StockHolding *stock0, *stock1, *stock2 = [[StockHolding alloc] init];
在C中只保留一个空地址。除非为指针分配内存,否则不能对指针应用任何内容,Objective-C也是如此

StockHolding *stock0, *stock1, *stock2 = [[StockHolding alloc] init];

StockHolding *stock0;
StockHolding *stock1;
StockHolding *stock2 = [[StockHolding alloc] init];
在一行上初始化多个对象是没有意义的。第一种方法很好

StockHolding *stock0;
StockHolding *stock1;
StockHolding *stock2 = [[StockHolding alloc] init];

在一行中初始化多个对象是没有意义的。您的第一种方法很好。

是的,您必须为每个变量手动分配和初始化。是的,您必须为每个变量手动分配和初始化。