0
下面的代码应该返回当前项目的名称返回一个枚举
typedef enum ItemName {test1, test2} ItemName;
- (BOOL)DoItemName{return ItemName;}
的当前值,但我收到此错误:
error: Semantic Issue: Unexpected type name 'ItemName': expected expression
下面的代码应该返回当前项目的名称返回一个枚举
typedef enum ItemName {test1, test2} ItemName;
- (BOOL)DoItemName{return ItemName;}
的当前值,但我收到此错误:
error: Semantic Issue: Unexpected type name 'ItemName': expected expression
在你的代码ItemName
定义了一个类型,而不是一个值。所以编写return ItemName
相当于return int
,它没有任何有意义的解释。编译器告诉你这一点。
如何返回枚举而不是int? – evdude100 2011-05-17 23:02:08
我的意思是,你的代码不返回一个变量,它返回一个类型。如果你想返回一些值,首先你必须声明一个'ItemName'类型的变量,然后返回它。 – Nekuromento 2011-05-17 23:06:30
@ evdude100:它是什么意思*返回一个枚举类型(注意:不是一个值,但类型本身)?这不是你可以在C中做的事情。该枚举的*值*是'test1'和'test1'。 – Chuck 2011-05-17 23:08:11