Сегодня 10 января, пятница ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7278
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
Хабрахабр: Коллективные / Блоги / Захабренные
Хабрахабр: Коллективные / Блоги / Захабренные
Голосов: 10
Адрес блога: http://habrahabr.ru/blog/
Добавлен: 2007-10-24 18:05:40 блограйдером Robin_Bad
 

Разработка под Apple iOS / Магия в рантайме: инспектируем объекты

2011-06-18 02:47:55 (читать в оригинале)

Objective-C, в отличие от иных языков, тип указателя у объектов не имеет особого значения во время исполнения при посылке сообщений и используется лишь во время компиляции. Просто выполните и проверьте:

NSNumber *string = [[NSString alloc] initWithString: @"hello"];
NSLog(@"%@", string);


Вы же не сомневались ;-) Мы бы могли использовать любой тип или вообще id.
Во время исполнения же всю нужную информацию получают у class object, через переменную isa. class object, c типом Class (или просто класс) – это синглтон, и поэтому классы у объектов можно сравнить простым сравнением указателей:

[object class] == [object2 class];

Если собрать всё информацию из class object, то несложно восстановить интерфейсы у объектов во время исполнения.
Читать дальше →

Тэги: cocoa, mac, objective

 


Самый-самый блог
Блогер Рыбалка
Рыбалка
по среднему баллу (5.00) в категории «Спорт»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.