Вход/Регистрация
Программирование на Objective-C 2.0
вернуться

Кочан Стивен

Шрифт:

Имена универсальных символов можно использовать в именах идентификаторов, символьных константах и символьных строках. Ключевые слова

Приведенные ниже идентификаторы являются ключевыми словами, представляющими специальное значение для компилятора Objective-C.

_Bool

_Complex

Jmaginary

auto

break

bycopy

byret

case

char

const

continue

default

do

double

else

enum

extern

float

for

goto

if

in

inline

inout

int

long

oneway

out register

restrict

return

self

short

signed

sizeof

static

struct

super

switch

typedef

union

unsigned

void

volatile

while Директивы

Директивы компилятора начинаются со знака @ и используются особым образом для работы с классами и обработками, см. таблицу В. I.

Табл. В.1. Директивы компилятора Директива Описание Пример @"символы" Определяет константный строковый объект типа NSSTRING. (Дня смежных строк выполняется конкатенация.) NSString *url = @"http://www.kochan-wood.com"; @class с1, с2,... Объявляет c1 , с2 ,... как классы. @class Point, Rectangle; @defs (класс) Возвращает список структурных переменных для класса. struct Fract {@defs( Fraction);} *fractPtr; fractPtr = (struct Fract *) [[Fraction alloc] init]; @dynamic имена Методы доступа для имен могут предоставляться динамически. @dynamic drawRect; @encode (тип) Строковое кодирование для типа. @encode (int *) @end Заканчивает секцию interface, секцию implementation или секцию протокола. @end @implementation Начинает секцию implementation, @implementation Fraction @interface Начинает секцию interface. @interface Fraction: NSObject <Copying> @private Определяет область действия одной или нескольких переменных экземпляра. См. «Переменные экземпляра» @protected Определяет область действия одной или нескольких переменных экземпляра. @public Определяет область действия одной или нескольких переменных экземпляра. @property (список) имена Объявляет свойства в списке для имен. @property (retain, nonatomic) NSSTHING *name; @protocol Создает объект типа Protocol для указанного протокола. @protocol (Copying)]){...} if ([myObj conformsTo: (protocol) @protocol имя Начинает определение протокола для имени. @protocol Copying @selector (метод) Объект типа SEL для указанного метода. if ([myObj respondsTo: @selector(allocF)]) (...) @synchronized (объект) Начинает блок, который должен выполняться одним потоком. Объект называется взаимоисключающим (mutually exclusive, mutex) семафором. @synthesize имена Генерирует методы доступа для имен, если они не заданы. @synthesize name, email; См. также «Переменные экземпляра» @try Начинает блок для улавливания исключительных ситуаций (исключений). См. «Обработка исключительных ситуаций» @catch (исключение) Начинает блок для обработки исключения. @finally Начинает блок, который выполняется в предположении, что предыдущем блоке @try было «инициировано» (throw) исключение. @throw Инициирует исключение. Предопределенные идентификаторы

В таблице В.2 приводится список идентификаторов, которые имеют специальный смысл в программах на Objective-C.

Табл. В.2. Специальные предопределенные идентификаторы Идентификатор Описание _cmd Локальная переменная, автоматически определяемая в методе, который содержит селектор для этого метода. func Локальная символьная строковая переменная, автоматически определяемая в функции или в методе; содержит имя функции или метода. BOOL Булева переменная, обычно со значениями YES и NO. Class Тип объекта-класса. id Обобщенный тип объекта. IMP Указатель на метод, возвращающий значение типа id. nil Пустой объект. Nil Пустой объект-класс. NO Определяется как (BOOL) 0 NSObject Корневой объект Foundation, определенный в < Foundation/NSObject.h>. Protocol Имя класса для хранения информации о протоколах. SEL Откомпилированный селектор. self Локальная переменная, автоматически определяемая в методе, которая обозначает получателя сообщения. super Родительский объект получателя сообщения. YES Определяется как (BOOL) 1. Комментарии

Имеется два способа вставки комментариев в программу. Комментарий может начинаться с двух символов //, и в этом случае любые последующие символы этой строки игнорируются компилятором.

Комментарий может также начинаться с символов / и заканчиваться символами /• К такой комментарий можно включать любые символы, и он может занимать несколько строк. Комментарий можно использовать в любом месте программы, если для этого есть место. Однако комментарии не допускают вложенности. Это означает, что комментарий всегда заканчивается символами /, даже если до этого встретилось несколько наборов символов /. Константы Константы целого типа

Константа целого типа (целая константа) - это состоящая из цифр последова-тельность, перед которой может дополнительно ставиться знак «плюс» или «минус». Если первой цифрой является 0, значит, это восьмеричная константа, и тогда следующие цифры должны быть в диапазоне 0-7. Если первой цифрой является О, и сразу после нее следует буква х (или X), значит, это шестнадцатеричная константа, и последующие цифры должны быть в диапазоне 0-9, a-f (или A-F).

В конце десятичной целой константы можно добавить суффикс I или L, и тогда она становится константой типа long int, если умещается в этот размер, иначе она интерпретируется как long long int. И, наконец, если она не умещается в long long int, она и нтерп ретируется как константа типа unsigned long long int.

В конце десятичной целой константы можно добавить суффикс II или LL, чтобы сделать ее long long int. При добавлении этого суффикса в конец восьмеричной или шестнадцатеричной константы, она интерпретируется сначала как long long int, но если не умещается в этот размер, то получает тип unsigned long long int.

В конце целой константы можно добавить суффикс и ИЛИ U, чтобы сделать ее константой без знака (unsigned). Если она не умещается в размер unsigned int, она интерпретируется как unsigned tong int. Если она превышает также этот размер, то интерпретируется как unsigned tong tong int.

Два суффикса — для unsigned и для tong — можно добавить к целой константе, чтобы она имела тип unsigned tong int. Если константа не умещается в этот тип, она обрабатывается как unsigned long long int.

Два суффикса - для unsigned и для tong long - можно добавить к целой кон-станте, чтобы она имела тип unsigned tong tong int.

Если десятичная целая константа без суффиксов слишком велика, чтобы уместиться в тип signed int, она интерпретируется как long int. Если она слишком велика, чтобы уместиться в тип long int, она интерпретируется как long long int.

  • Читать дальше
  • 1
  • ...
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: