NSLog
コード内のいずれかをエラーとして扱いたい。この行は、Xcodeのコンパイル時エラーである必要があります。release
ARC対応プロジェクトでの使用がエラーとして扱われるのと同じように。
3 に答える
3
これを試して、
#define NSLog_UNAVAILABLE __attribute__((unavailable("NSLog is treated as Error.")))
FOUNDATION_EXPORT void NSLog(NSString *format, ...) NS_FORMAT_FUNCTION(1,2) NSLog_UNAVAILABLE;
于 2013-03-25T12:18:09.190 に答える
1
NSLog
を使用してコード内ののプロトタイプを再宣言できる__deprecated
ため、これを使用すると警告が表示されます。
FOUNDATION_EXPORT void NSLog(NSString *format, ...) NS_FORMAT_FUNCTION(1,2) __deprecated;
次に、警告をエラーに変える方法があるかもしれません。
于 2013-03-25T11:55:29.140 に答える
0
コンパイラとしてClangを使用する場合は、これを使用できます(実際、GCCは_Static_assert
バージョン4.6からC11もサポートしていることに気づきました)。
#define NSLog(...) _Static_assert(0, "Not allowed to use NSLog!")
失敗するとコンパイルは失敗し_Static_assert
ます。
于 2013-03-25T12:10:24.220 に答える