概述
所以我在Objective-C的以下switch语句中使用常量变量时遇到问题.
我有以下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;
}
}
}
但不幸的是,它在"案例TXT_NAME:"行中给了我以下两个错误:
表达式不是整数常量表达式
案例标签不会减少为整数常量
有谁知道我做错了什么?UITextField的"tag"变量返回一个NSInteger,所以我没有看到问题......
谢谢你的帮助!
最后
以上就是懦弱手链为你收集整理的c语言switch函数为常数,为什么我不能在Objective-C中的switch-case语句中使用我的常量?[error = Expression不是整数常量表达式]...的全部内容,希望文章能够帮你解决c语言switch函数为常数,为什么我不能在Objective-C中的switch-case语句中使用我的常量?[error = Expression不是整数常量表达式]...所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复