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