Када пишете Објецтиве-Ц програм за своје иПхоне или Мац ОС Кс апликације, све што радите је да обезбедите сет инструкција које рачунар треба да прати. У основи, програми манипулишу бројевима и текстом, а када се све узме у обзир, рачунарски програм има само два дела: променљиве (и друге структуре), које „држе“ податке, и инструкције које извршавају операције над тим подацима.
Прављење Објецтиве-Ц изјаве
Програмирање иПхоне и Мац апликација у Објецтиве-Ц значи давање изјаве. Можете одмах препознати изјаву у Објецтиве-Ц тако што ћете приметити тачку и зарез на крају:
изјава;
Видећете друге редове кода, али осим ако се линија не завршава тачком и зарезом, то није Објецтиве-Ц изјава.
Објецтиве-Ц Уграђени типови података и нови типови података
Променљиве које декларишете у Објецтиве-Ц, Објецтиве-Ц типови података, морају бити тип који компајлер може да препозна. Објецтиве-Ц долази са бројним уграђеним типовима података, као и механизмима за креирање нових, за програмирање ваших иПхоне или Мац ОС Кс апликација.
Уграђени типови
Тип |
Опис |
Величина |
цхар |
Карактер |
1 бајт |
инт |
Цео број — цео број |
4 бајта |
пловак |
Број са једним прецизним покретним зарезом |
4 бајта |
Двоструко |
Број са помичним зарезом двоструке прецизности |
8 бајтова |
кратак |
Кратак цео број |
2 бајта |
дугачак |
Дупли кратки |
4 бајта |
дуго дуго |
Дупли дуг |
8 бајтова |
БООЛ |
Боолеан (знак са знаком) |
1 бајт |
Типови набрајања
енум типеНаме { идентифиер1, ... идентифиерн};
Идентификатори су константи типа инт.
типедеф
типедеф типеНаме идентификатор;
Повезује идентификатор са одређеним типом.
Константе
цонст идентификатор типа = вредност;
#дефине вредност идентификатора
Омогућава вам да дефинишете имена за константе.
Објецтиве-Ц оператори
Објецтиве-Ц оператори, попут оних у другим програмским језицима, омогућавају вам да извршавате операције над променљивим (отуда и назив). Објецтиве-Ц пружа много оператера, а праћење свих њих може бити тешко док програмирате своје иПхоне или Мац ОС Кс апликације. Користите следеће табеле да бисте покренули своје памћење о томе који оператер извршава који задатак.
Аритметички оператори
Оператер |
Шта ради |
+ |
Додатак |
– |
Одузимање |
* |
Множење |
/ |
дивизије |
% |
Модуло |
Оператори релације и једнакости
Оператер |
Шта ради |
== |
Једнако |
!= |
Неједнако са |
> |
Веће од |
< |
Мање од |
>= |
Већи или једнак |
<= |
Мање или једнако |
Логички оператори
Оператер |
Шта ради |
! |
НЕ |
&& |
Логично И |
|| |
Логично ОР |
Сложени оператори доделе
Оператер |
Шта ради |
+= |
Додатак |
-= |
Одузимање |
*= |
Множење |
/= |
дивизије |
%= |
Модуло |
&= |
Битвисе АНД |
|= |
Битова укључено ОР |
^= |
Ексклузивно ОР |
<<= |
Схифт Лефт |
>>= |
Схифт десно |
Оператори повећања и декремента
Оператер |
Шта ради |
++ |
Додатак |
— |
Одузимање |
*= |
Множење |
/= |
дивизије |
%= |
Модуло |
&= |
Битвисе АНД |
|= |
Битова укључено ОР |
^= |
Ексклузивно ОР |
<<= |
Схифт Лефт |
>>= |
Схифт десно |
Битвисе Операторс
Оператер |
Шта ради |
& |
Битвисе АНД |
| |
Битова укључено ОР |
^ |
Ексклузивно ОР |
~ |
Унарни комплемент (инверзија битова) |
<< |
Схифт Лефт |
>> |
Схифт десно |
Остали оператери
Оператер |
Шта ради |
() |
Цаст |
, |
Зарез |
Величина() |
Величина |
? : |
Условни |
& |
Адреса |
* |
Индирецтион |
Контролне изјаве и петље у Објецтиве-Ц
У програмирању, као иу животу, морате доносити одлуке и поступати по њима. Објецтиве-Ц обезбеђује контролне изјаве и петље које помажу вашем програму да предузме акцију. Можда ћете желети да поновите скуп инструкција заснованих на неком стању или стању, на пример, или чак да промените секвенцу извршавања програма. Ево основне синтаксе за Објецтиве-Ц контролне наредбе и петље.
ако друго
ако (услов) {
изјава(е) ако је услов тачан;
}
остало {
изјава(е) ако услов није тачан;
}
за
фор (бројац; стање; бројач ажурирања) {
наредба(е) за извршење док је услов истинит;
}
за ин
фор (Упишите новуВариабле у изразу) {
исказ(е);
}
или
Упишите постојећеВариабле ;
за (постојећаВаријабла у изразу) {
изјава(е);
}
Израз је објекат који је у складу са НСФастЕнумератион протоколом.
-
НСАрраи и НССет набрајање је преко садржаја.
-
НСДицтионари набрајање је преко кључева.
-
НСМанагедОбјецтМодел набрајање је преко ентитета.
док
док (услов) {
наредба(е) за извршење док је услов истинит
}
учинити док
урадити {
наредба(е) за извршење док је услов истинит
} вхиле (услов);
Скочите изјаве
повратак ;
Зауставља извршавање и враћа се на функцију позивања.
пауза;
Оставите петљу.
Настави;
Прескочите остатак петље и започните следећу итерацију.
гото лабелНаме;
...
лабелНаме:
Апсолутни скок на другу тачку у програму (немојте га користити).
екит();
Завршава ваш програм са излазним кодом.
Декларисање класа и слање порука у Објецтиве-Ц
Објектно оријентисани програмски језици вам омогућавају да декларишете класе, креирате изведене класе (подкласе) и шаљете поруке објектима инстанцираним из класе. Ово је суштина објектно оријентисаног програмирања и део објектно оријентисаних екстензија које Објецтиве-Ц додаје Ц. Да би се осигурало да све функционише глатко, доступне су директиве компајлера које вам омогућавају да обавестите компајлера о својим класама користећи @цласс и #импорт.
Приступ
#импорт "Суперцласс.х"
@интерфаце Име класе : Суперкласа {
декларације променљиве инстанце;
}
декларације метода
@проперти(аттрибутес) декларација променљиве инстанце;
–д
Имплементација
#импорт "ЦлассНаме.х"
@имплементатион ЦлассНаме
@синтхесизе променљива инстанце;
дефиниције метода
–д
Синтакса поруке
[порука примаоца]
#увоз
#импорт „име датотеке.х“
Гарантује да ће датотека заглавља бити укључена само једном.
@класа
@цласс ЦлассНаме;
Укључује компајлер у кориснички дефинисане типове.