такое завершение кода и проверка компилятора
му у меня есть проблема с использованием постоянной переменной в следующем операторе switch в Objective-C.
у меня естьConstants.h со следующим:
// Constants.h
extern NSInteger const TXT_NAME;
А такжеConstants.m как:
// Constants.m
#import "Constants.h"
NSInteger const TXT_NAME = 1;
Затем вTabBasic.m Я пытаюсь использовать эту константу в операторе switch-case:
// TabBasic.m
#import "TabBasic.h"
#import "Constants.h"
... code ...
- (IBAction)saveValue:(id)sender {
if ([sender isKindOfClass: [UITextField class]]) {
UITextField *txtField = (UITextField *) sender;
switch (txtField.tag) {
case TXT_NAME:
NSLog(@"Set property name to: %@", txtField.text);
break;
}
}
}
Но, к сожалению, в строке "case TXT_NAME:" мне выдаются следующие две ошибки:
Выражение не является целочисленным константным выражениемМетка регистра не сводится к целочисленной константеКто-нибудь знает, что я делаю не так? Переменная «tag» UITextField возвращает NSInteger, поэтому я не вижу проблемы ...
Спасибо за вашу помощь!