Функции / Методы в Цели C! - PullRequest
0 голосов
/ 07 октября 2010

Мне нужна помощь с функциями в цели C?

В C ++ я могу сделать функцию, подобную этой:

int testFunction(int zahl) { 
    int loop;
    loop = zahl * 10;
    return loop;
}

эта функция умножает мой zahl на 10 и возвращает результат.В C ++ я могу вызывать эту функцию всякий раз, когда захочу, с помощью:

testFunction(5);

и она возвращает 50.

Я не понимаю, как я могу сделать такие функции, как testFunction, в цели c?Должен ли я сделать это с

-(void)testFunction{}?

Спасибо большое за помощь !!

Greez Franhu

Ответы [ 3 ]

2 голосов
/ 07 октября 2010

Просто используйте

int testFunction(int zahl)
{
    return zahl * 10;
}

Вам понадобится другая нотация (см. Ответ пользователя user467105), если вы хотите объявить функции-члены.

1 голос
/ 08 октября 2010

Ваша функция работает точно так же в Objective-C:

int testFunction(int zahl) { 
    int loop;
    loop = zahl * 10;
    return loop;
}

Другой ваш синтаксис:

- (Недействительными) функции теста {}

Для метода, в вашем .h файле вам нужно:

@interface SomeClass : NSObject {
}

-(int)testFunction:(int)zahl;

@ конец

В вашем .m:

-(int)testFunction:(int)zahl {
    int loop;
    loop = zahl * 10;
    return loop;
}

Затем вы можете назвать его [someObjectOfTypeSomeClass testFunction: 13]

Методы применяются к вашим объектам. Используйте методы для изменения или запроса состояния объектов. Используйте функции, чтобы делать другие вещи. (это то же самое, что методы и функции C ++)

1 голос
/ 07 октября 2010

В Objective-C функцию можно записать так:

-(int)testFunction:(int)zahl
{
    int loop; 
    loop = zahl * 10;   
    return loop; 
}

и называется так:

int testResult = [self testFunction:5];
//assuming testFunction is in same class as current (ie. self)

Однако, по крайней мере, в Какао, я считаю, вы можете иметь код C ++ и Objective-C параллельно, чтобы вы могли включить версию C ++ как есть и вызывать ее из кода Objective-C.

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