2-дневный новичок в объективе C с фоном Ruby / Python.
В настоящее время я озадачен тем, как работают свойства.
У меня есть класс «Персона» с атрибутами «персона» и «повышение».
Если я позвоню
Person *newEmployee = [[Person alloc]init];
NSString *pn = [newEmployee valueForKey:@"personName"];
NSLog(@"%@", pn);
все работает просто отлично и денди. Но если я позвоню
Person *newEmployee = [[Person alloc]init];
NSString *pn = [newEmployee.personName];
NSLog(@"%@", pn);
Я получаю следующую ошибку:
ошибка: запрос на член 'personName' во что-то, что не является структурой или объединением
У меня сложилось впечатление, что оба были эквивалентны. В классе person.m @synthesize personName
, в person.h @property(readwrite, copy)NSString *personName;
Любые предложения наиболее ценны.