Как принять эти параметры так же, как эта функция? - PullRequest
0 голосов
/ 27 августа 2009

Например:

- (BOOL)compare:(NSDecimal)leftOperand greaterThan:(NSDecimal)rightOperand {
    NSComparisonResult result = NSDecimalCompare(&leftOperand, &rightOperand);
    // rest not important
}

Как вы можете видеть, метод просто получает эти два типа NSDecimal, leftOperand и rightOperand. Затем он передает их в функцию API C, которая любит иметь их по ссылке. Извините, если это неправильный термин, не изучал этот материал. Поправьте меня если я ошибаюсь: -)

Я хочу изменить этот метод таким образом, чтобы я мог также принимать параметры так, как это делает функция. Я думаю, что это умно, потому что метод не будет копировать параметры (я верю, что это делает). Что я должен был бы добавить туда, чтобы сделать эту ссылку правильной? И после этого мои параметры являются просто ссылками, верно? Как бы я передал их тогда в функцию NSDecimalCompare?

Я немного помню, был ли какой-нибудь оператор разыменования для этого?

1 Ответ

4 голосов
/ 27 августа 2009

Попробуйте:

- (BOOL)compare:(const NSDecimal*)leftOperand greaterThan:(const NSDecimal*)rightOperand {
    NSComparisonResult result = NSDecimalCompare(leftOperand, rightOperand);
    // rest not important
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...