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

Objective-C

Войти
Регистрация
Восстановить пароль
 
WolfbertFX
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 23
#1

@interface и @property - Objective-C

06.04.2014, 11:10. Просмотров 960. Ответов 2
Метки нет (Все метки)

Здравствуйте! Объясните пожалуйста, вот я накатал класс:
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
@interface Good : NSObject {
    
    int c;
}
 
@property int a;
@property int b;
@property int _c;
 
-(void)showAandB;
 
@end
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#import "Good.h"
 
@implementation Good
 
@synthesize a;
@synthesize b;
@synthesize _c = c;
 
-(void)showAandB {
    
    NSLog(@"A = %i, B = %i, f C = %i",a,b,c);
    
}
 
@end
переменная 'с' написана по канонам из какого то облучающего ролика, мол описываем переменную в @interface, создаём гетеры и сеттеры через @property и @synthesize и дописываем в с @synthesize _с = с, что по сути является указателем, что мол метод '_с' работает с переменной 'c' из @property. А вот переменные 'а' и 'b' написаны проще, они не указаны в
@property и не указаны в @synthesize и это всё прекрасно работает. Получается @property сам создаёт переменную? Зачем тогда вообще нужно описание переменных в @property? Спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.04.2014, 11:10     @interface и @property
Посмотрите здесь:

Objective-C Interface Builder 4.2
Objective-C Разница между @property и объявлением переменной в классе хедера
Outlet, @property Objective-C
Objective-C Property класса
Objective-C Не запускается Interface Builder
Objective-C @property (readonly)
Великие и ужасные @property Objective-C
Objective-C @property,@synthesize в Objective-C
Objective-C Зачем нужно свойство @property (assign)
Работа @property в одном классе в разных методах Objective-C
Objective-C @property или ivar
Objective-C Property и synthesize

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zulkis
 Аватар для zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
06.04.2014, 16:28     @interface и @property #2
Цитата Сообщение от WolfbertFX Посмотреть сообщение
облучающего ролика
Прежде всего, прекратите смотреть такое. Облучение вам на пользу не пойдет.
Цитата Сообщение от WolfbertFX Посмотреть сообщение
Получается @property сам создаёт переменную?
Получается так. Создается переменная в экземпляре класса используя имя свойства с добавлением префикса "_".
Написание @synthesize для каждого свойства - это старый стандарт clang-а. Сейчас можно не писать, только если вам явно не нужно что-то другое, нежели стандартное имя ivar-а.
WolfbertFX
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 23
06.04.2014, 16:37  [ТС]     @interface и @property #3
Опечатка))
Yandex
Объявления
06.04.2014, 16:37     @interface и @property
Ответ Создать тему
Опции темы

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