2

ファイルが Xcode 4.4 以降でコンパイルされているかどうかを (プリプロセッサで) テストする方法はありますか? または、より具体的には、コンパイラが自動的に@synthesizeプロパティを作成し、そうでない場合はコンパイル エラーをスローするかどうかをテストしますか?

4

2 に答える 2

4

これを使用して機能をテストできます。

#if (defined(__clang__) && __has_feature(objc_default_synthesize_properties))
#warning Got it
#else
#error omg no auto synthesis
#endif

機能の完全なリストは、http: //clang.llvm.org/docs/LanguageExtensions.htmlに記載されています。

于 2012-08-30T22:18:57.887 に答える
2

これは LLVM コンパイラの 4.x バージョンで利用できるようになったため、次のコマンドを使用して新しい十分なバージョンの存在をテストできるはずです。

#if __clang__ && (__clang_major__ >= 4)
 // New version code here
#else
 // Fallback code for older version here
#endif
于 2012-08-30T22:03:49.567 に答える