我在文件foo.h中有一个名为RandomEnum的枚举:
- // foo.h
- typedef enum RandomEnum {
- ran_1 = 0,ran_2
- } RandomEnum;
在另一个文件bar.h中,我试图使用RandomEnum作为参数类型:
- // bar.h
- #import "foo.h"
- @interface bar : NSObject {}
- -(RandomEnum)echo:(RandomEnum)ran;
- @end
但是,编译器似乎不能识别RandomEnum.这样做是否可行?
编译器错误:
- error: expected ')' before 'RandomEnum'
解决方法
C构造枚举RandomEnum不定义一个名为RandomEnum的类型,它定义了一个名为enum的类型.为了能够写入RandomEnum的类型,你需要使用一个typedef.