Форум программистов, компьютерный форум CyberForum.ru

Outlet, @property - Objective-C

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
KuKu
 Аватар для KuKu
1544 / 1022 / 69
Регистрация: 17.04.2009
Сообщений: 2,954
02.09.2012, 12:09     Outlet, @property #1
Добрый день, встал вопрос: почему при декларации оутлета добавляется только @property:
Objective-C
1
2
3
@interface MainViewController : UIViewController
@property (retain, nonatomic) IBOutlet UILabel *labelState;
@end
А где же сам указатель хранится? Почему не так:
Objective-C
1
2
3
4
5
6
@interface MainViewController : UIViewController
{
   UILabel *labelState;
}
@property (retain, nonatomic) IBOutlet UILabel *labelState;
@end
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.09.2012, 12:09     Outlet, @property
Посмотрите здесь:

Property Get и Property Let Странное поведение Visual Basic
Objective-C Разница между @property и объявлением переменной в классе хедера
Objective-C Property класса
Objective-C @property (readonly)
Великие и ужасные @property Objective-C
Наследование outlet
Objective-C @property,@synthesize в Objective-C
@interface и @property Objective-C
Objective-C Зачем нужно свойство @property (assign)
Работа @property в одном классе в разных методах Objective-C
Objective-C @property или ivar
Objective-C Property и synthesize

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vorona
Peace 2 all shining faces
 Аватар для Vorona
661 / 523 / 44
Регистрация: 05.03.2010
Сообщений: 1,270
02.09.2012, 13:59     Outlet, @property #2
это относительно новый стиль записи, при объявлении только property в .h файле
Objective-C
1
@property (retain, nonatomic) IBOutlet UILabel *labelState;
в имплементационном файле, это свойство синтезируется следующим образом
Objective-C
1
@synthesize labelState = _labelState; // или __labelState
справа от знака присваивания - сам указатель
либо просто:
Objective-C
1
@synthesize labelState;
хотя последний, судя по всему, не особо рекомендуют

тут можно почитать в подзаголовке A Simple Proposition
Yandex
Объявления
02.09.2012, 13:59     Outlet, @property
Ответ Создать тему
Опции темы

Текущее время: 19:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru