如何在Objective C中返回类的实例?

Nic*_*oke 1 class objective-c ios4

我试图在函数中返回一个类的实例,但我不知道该怎么做.

我有一个名为GenerateMoves的类,并创建了该类的实例:

GenerateMoves *move = [[GenerateMoves alloc] init];
Run Code Online (Sandbox Code Playgroud)

然后我有另一个类,它必须使用在该类实例中设置的变量("move",从上面开始).

所以我创建了一个函数:

-(Class)returnClass {
return move;
}
Run Code Online (Sandbox Code Playgroud)

然后在另一个班级:

GenerateMoves *move = [otherClass returnClass];
Run Code Online (Sandbox Code Playgroud)

但是,它会抛出一个警告,说它是一个不兼容的指针类型.

我该怎么做呢?

谢谢你的协助!:d

phe*_*cks 8

你要这个:

-(GenerateMoves*)returnClass {
  return move;
}
Run Code Online (Sandbox Code Playgroud)

虽然我会称之为returnMove,而不是returnClass

编辑:更详细一点.

虽然你的写作方式是完全有效的Objective C,但我认为如果你这样编写它会更容易理解:

GenerateMoves* move = [[GenerateMoves alloc] init];
Run Code Online (Sandbox Code Playgroud)

换句话说,您正在创建一个指向GenerateMoves实例的指针并将其分配给变量move.然后它自然地返回returnClass的返回类型是GenerateMoves*(再次指向GenerateMoves实例的指针)