Как увеличить переменную и перезаписать старую? - PullRequest
0 голосов
/ 04 декабря 2010

Я новичок в Objective C, и я совершенно запутался, что метод:

-(void)increment 
{
  count = count+1;
}

не увеличивает счетчик переменных при любом вызове метода, а просто устанавливает переменную на «1», независимо от того, как часто я вызываю метод. В Objective-C это не так? На других языках это довольно просто.

Помощь была бы отличной, спасибо, ребята.

1 Ответ

1 голос
/ 04 декабря 2010

Если это не переменная экземпляра, вам необходимо статически инициализировать ее. Попробуйте это:

-(void)increment {
    static int count = 0;
    count = count + 1; // Alternatively written as count++;
}

Если вы хотите, чтобы это была переменная экземпляра, вам нужно объявить ее в заголовочном файле. В этом случае сделайте это вместо:

@interface SomeClass : NSObject {
    int count;
}

Тогда ваш increment метод должен работать правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...