Я пытаюсь к константе NSString в моем.h файле быть определенным в моем.m. Я понимаю это
extern NSString * const variableName;
в.h и
NSString * const variableName = @"variableValue";
путь состоит в том, чтобы сделать это. При исследовании c учебных руководств я вижу это const
как предполагается, идет перед определениями переменной. Мой вопрос состоит в том, почему он не объявляется как extern const NSString * variableName;
в.h и const NSString * variableName = @"variableValue";
в.m. Я знаю, что это не работает, потому что я встречаюсь с предупреждениями компилятора, которые говорят 'Передающий аргумент 1 из methodName: спецификаторы отбрасываний от указателя предназначаются для типа'. Что это означает?
Это не одно и то же. Модификатор const может быть применен к значению или указателю на значение.
int * const
Постоянный указатель (не изменяемый) на целое число (его значение может быть изменено)
const int *
Изменяемый указатель на постоянное целое число (его значение не может быть изменено)
Так что вы можете представить:
const int * const;