在Objective-C中的方法参数中使用枚举

时间:2014-09-22 11:04:10

标签: objective-c xcode enums

我有一个头文件ApiManager.h,我在其中定义了一个枚举:

typedef enum ApiEndpoint {
    // some values
} ApiEndpoint;

在该文件中,我有一个方法,将其中一个值作为参数:

- (NSString *) getPathForEndpoint: (ApiEndpoint) endpoint;

这似乎对XCode来说没问题。但是,在另一个文件ApiManagerDelegate.h中,我有以下定义:

- (void) requestToEndpoint: (ApiEndpoint) endpoint succeeded: (id) responseObject;
- (void) requestToEndpoint: (ApiEndpoint) endpoint failed: (NSError *) error;

XCode使用错误ApiEndpoint标记两个expected a type参数。我已导入ApiManager.h,因此ApiEndpoint确实显示在完成列表中,但由于某种原因,XCode无法识别它。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

正如@trojanfoe指出的那样神秘地删除了他的答案,看起来像循环依赖是个问题。

typedef移到单独的文件ApiEndpoint.h解决了这个问题。