文件foo.h中有一个名为randomenum的枚举:
// foo.h
typedef enum RandomEnum {
ran_1 = 0,
ran_2
} RandomEnum;
在另一个文件,bar .h中,我尝试使用RangNeMUM作为参数类型:
// bar.h
#import "foo.h"
@interface bar : NSObject {}
-(RandomEnum)echo:(RandomEnum)ran;
@end
然而,编译器似乎无法识别randomenum。这样做有可能吗?
编译器错误:
error: expected ')' before 'RandomEnum'
编辑:添加了foo.h代码以进行澄清
最佳答案
c构造enum RandomEnum
没有定义一个名为RandomEnum
的类型-它定义了一个名为enum RandomEnum
的类型。要只为类型编写RandomEnum
,需要使用typedef。