Когда вы инициализируете переменную вне функции или метода, вы можете использовать только постоянные значения: вы не можете выполнять какой-либо код.Здесь проблема в том, что вы пытаетесь выполнить NSMakeRange
.(См. Ответы на этот вопрос , который похож).
Решение состоит в том, чтобы объявить range1
, но не присваивать ему никакого значения, а затем реализовать метод +initialize
, которыйустанавливает значение.initialize
- это метод класса, который вызывается до вызова любых других методов в вашем классе.
+ (void)initialize {
if (range1 == NULL) {
range1 = NSMakeRange(12, 5);
}
}