gem*_*asr 4 enums objective-c ios
我正在使用枚举,类似这样:
typedef NS_ENUM(NSInteger, MyURLType) {
MyURLType1,
MyURLType2,
MyURLType3
};
Run Code Online (Sandbox Code Playgroud)
当我尝试比较或识别类型时出现问题:
if (type == MyURLType2)
Run Code Online (Sandbox Code Playgroud)
我和(并非如此)的情况下我会收到"Incompatible integer to pointer conversion"警告.我在宣言中做错了吗?有任何想法吗?MyUrlType2MyUrlType3MyURLType1
谢谢!
从你的评论
是的,我使用的是MyURLType*type = MyURLTypeX
然后type不是类型MyURLType,它是类型pointer to MyURLType.
if (type == MyURLType2)
Run Code Online (Sandbox Code Playgroud)
在这里,您将指针类型(type)与整数类型(MyURLType)进行比较.如果是整数类型,0它不会生成警告,因为它可能是一个检查NULL.
在compare()时,您需要声明type为simple MyURLType(MyURLType type =…)或dereference .typeif (*type == MyURLType2)
| 归档时间: |
|
| 查看次数: |
3045 次 |
| 最近记录: |