-1

我正在做一个关于棋盘游戏的小程序。我不知道如何使用“this”让方法知道我正在回调我正在使用的对象。

-(id)initWithName:(NSString *) name
{
    if (self = [super init])
    {
        name = _name;
    }
    return self;
}

-(void) move:(Dice *) die
{
    [die rollDice];
    [_isOn leave:&Player];
    [_isOn move:&Player using:die remainingSteps:die.totalValue];

}

正如你们所看到的,我要求 _isOn 执行函数“leave:(Player *)p”,其中 p 是创建的播放器对象。但是,程序一直提示错误说“预期的表达”

4

1 回答 1

2

我假设您正在寻找的是:

[_isOn leave:self];

Player表示类本身,而该leave方法需要一个指向该类实例的指针。在 Objective-C 中,self关键字(而不是“this”)指的是当前对象实例。

于 2013-09-01T10:40:23.823 回答