我有许多从服务器返回的JSON对象,我正在尝试在我的Objective C中对它们进行一些规范化。
我有这个枚举:
//VP_STATUS
typedef enum {
VP_STATUS_NA,
VP_STATUS_STEXP,
...
VP_STATUS_COUNT
} VP_STATUS;
我有一个函数,它将JSON对象(即NSMutableDictionary)中的字符串映射到此枚举值,然后我尝试在NSMUtableDictionary上设置一个名为“status”的键,如下所示:
VP_STATUS status = [myStringToEnumMappingFunction:[p objectForKey:@"status_label"]];
[p setValue:status forKey:@"status"];
然而,在setValue:forKey这行代码上我遇到了这个错误:
"Implicit conversion of VP_STATUS to id is disallowed with ARC"
我需要先将状态转换为其他类型吗?如果是这样,那么使用定义为VP_STATUS的消息就失去了意义,不是吗?
我对Objective-C还比较陌生,可能完全做错了,欢迎提出建议。