このコードのpchファイルがあります:
#import "ServerModel.h"
enum {
SAVE = 1,
REMOVE = 2,
REMOVE_ALL = 3
};
typedef NSInteger RequestType;
ServerModel.hで使用しようとしていますRequestType
が、コンパイラは私の列挙型について何も知りません。列挙型のヘッダーファイルを作成し、このファイルをpch-fileにインポートしようとしましたが、何も変更されていません。
#import
したがって、基本的な問題は次のとおりです。このpchファイルで編集されたファイルで.pchファイルの列挙型を使用できません。
この問題を処理する方法はありますか?そして、pch-fileは列挙型をそこに置くのに良い場所ですか?
UPD:
#import
このすべての列挙型を1つのヘッダーファイルに入れ、このファイルをpch-fileのすべてのsの最後に入れようとしましたが#import
、機能しません。しかし、私は置きます
#import "Enums.h" // my file with enums
pch-fileの先頭で、他#import
のすべてのファイルの前に、それが機能しています。
#import
他の人の前後の配置の違いを誰かが説明してくれたら嬉しいです#import
。
UPD2:
私はそれをより明確にしようとします:
私はEnums.h
列挙型を持っています:
enum {
SAVE = 1,
REMOVE = 2,
REMOVE_ALL = 3
};
typedef NSInteger RequestType;
MyProject-Prefix.pch
と:
#import "ServerModel.h"
#import "Enum.h"
そしてServerModel.h
次のコードで:
- (void)unlinkAccountWithRequestType:(RequestType)requestType;
Expected a type
このメソッドでエラーが発生しました。プロジェクトをクリーンアップしましたが、同じエラーが発生しました。
私が#import
このように切り替えるとき:
#import "Enums.h"
#import "ServerModel.h"
すべてが良いです