0

Я довольно новичок в Objective-C, и что я хочу сделать, это определить переменные в файле EntityNameConstants.h, где я храню все имена Entity.Как использовать переменную #define как параметр метода в объекте C

И я буду использовать все определения в репозитории для всех методов, связанных с ManagedObjectContext.

EG. Это в файле .h

define ENTITY_USER_PICTURE = @"UserPicture" 

и в хранилище я хочу использовать эти константы следующего

UserPicture *userPicture = (UserPicture *)[NSEntityDescription insertNewObjectForEntityForName:ENTITY_USER_PICTURE 
                      inManagedObjectContext:context]; 

, но я не могу это сделать, это дает мне ошибку парсеру Issue.

Я делаю что-то неправильно здесь?

+3

ли вы поставить хэш (#) перед определить? Можете ли вы вставить ошибку вывода? – pasine

+0

Имейте в виду, что Objective-C является «C», это строгий суперсет. Все, что работает в «С», также работает в Objective-C. – zaph

+0

Нет никакой веской причины использовать для этой цели определение, а не константу. –

ответ

5

Правильный синтаксис для define является:

#define VARIABLE @"value" 
+0

Примечание: знак равенства не указан. – Holly

+0

Извините, что синтаксис #define ENTITY_USER_PICTURE @ "UserPicture" i wnat использовать это как переменную параметр insertNewObjectForEntityForName – Nikita255

Смежные вопросы