2010-09-27 3 views
1

Я исхожу из фона java, я знаю, как вызывать методы из объектов, но может ли быть невозможно?Объекты и классы

main(){ 
    int v1=2; 
    int v2=3: 
    int sum; 
    sum = [Add: (int) v1, (v2)]; 
} 
add ((int) v1, (int) v2)){ 
    return v1+v2; 
} 

И мой второй вопрос: как бы определить переменную, которая является статичной во всех экземплярах объекта. Например, если я хочу, чтобы переменная tax_rate была 0,07 в каждом экземпляре объекта.

+2

Вам нужно объяснить, ЧТО это вы хотите выполнить, это не очевидно из фрагмента исходного кода выше. – jer

+1

Этот код как есть не работает. У вас нет объявления Добавить только добавить. Нет прототипа add, и у вас нет «методов», но только «функции», поэтому вы не можете делать [[Add: (int) v1, (v2)]; – 2010-09-27 00:07:10

ответ

1

Способы записываются и вызывают в Objective-C несколько иначе. Определение метода может выглядеть следующим образом:

- (int)addThis:(int)v1 andThat:(int)v2 
{ 
    return v1 + v2; 
} 

И вы бы вызвать его так:

int v1 = 2; 
int v2 = 3; 
int sum = [self addThis:v1 andThat:v2]; 

Синтаксис со скобками только для методов на объектах (или классов). Если вы вызываете обычную старую функцию, синтаксис такой же, как в C.

+0

Спасибо! Я не знал, что – Icestorm

Смежные вопросы