2012-05-19 10 views
-1

Я начал изучать программирование около 8 месяцев назад, начав с C, OOP, теперь на iOS, и это моя цель. Все идет довольно гладко по большей части, и я начал практиковать, программируя небольшие приложения на xcode. Это всего лишь маленькие термины, такие как подпрограмма и инициализатор удобства, которые иногда отбрасывают меня. Может ли кто-нибудь определить эти условия для меня и просто дать мне быстрый пример их использования? В моих демонстрациях мне не приходилось их использовать, но лекции, которые я изучаю, упоминают их, однако они не очень хорошо объясняют их. Не так много информации об этих условиях онлайн. Кстати, я знаю, что эти термины никак не связаныЧто такое подпрограмма и инициализатор удобства?

Любая помощь приветствуется, спасибо

+2

В идеале два совершенно несвязанных слова будут предметом двух отдельных вопросов. –

+0

C -> OOP -> IOS ... yes ...:/ –

ответ

1

А «подпрограмма» в Objective-C называется method, и он состоит из спецификатора, возвращаемого значения и аргументов. Метод класса может быть отправлен только классу декларации, а методы экземпляра требуют вызова экземпляра.

метод класса

образец может выглядеть следующим образом:

+(void)doMagicWithString:(NSString*)magicString; 

И называется просто с:

[MyDeclaringClass doMagicWithString:@"Example"]; 

+ обозначает это класс статус метод, doMagicWithString: фактическое имя метода , а magicString - его аргумент.

Пробу метод экземпляра может выглядеть следующим образом

-(CFRabbit*)beVewyQuiet:(BOOL)quiet imHuntingWabbits:(CFHunter*)hunter; 

, который выглядит, как это в C:

CFRabbit* beVewyQuiet(bool quiet, CFHunter* hunter); 

Этот метод возвращает объект типа CFRabbit * и может быть вызван только активными экземплярами такого класса:

[self.myInstanceOfDeclaringClass beVewyQuiet:YES imHuntingWabbits:nil]; 

«Инициализатор удобства» (удобство метод) - это просто сообщение, которое заменяет +alloc и -init одним быстрым и простым методом класса. Например, метод NSArray+array возвращает пустой массив, или метод возвращает пустой словарь.

Если раньше, было бы принять сообщение, как это:

myArray = [NSArray alloc] init]; //long and unnecessary 
+2

Nit-pickery: метод - это всего лишь один вид подпрограммы. Функции и блоки также являются подпрограммами. – Chuck

2

удобство инициализатор это один, который принимает параметры, так что вы можете инициализировать объект с другими, чем ноль значений.

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