5

私はAFNetworking実装を行っていましたが、これを見つけました

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wassign-enum"
[request setHTTPBody:[NSJSONSerialization dataWithJSONObject:parameters options:0 error:&error]];
#pragma clang diagnostic pop

( AFHTTPClient:489-492 )

assign-enum警告は明らかにオフになっていますが、それは何を意味するのでしょうか。

その場合、clang によってスローされる警告は何ですか?

4

2 に答える 2

8

clang プラグマがない場合に出力される警告は次のとおりです。

列挙型 'NSJSONWritingOptions' (別名 'enum NSJSONWritingOptions') の範囲にない整数定数

の宣言NSJSONWritingOptionsを見ると、0 の値が定義されていないことがわかります。

enum {     NSJSONWritingPrettyPrinted = (1UL << 0) }; typedef NSUInteger NSJSONWritingOptions;

ドキュメントは 0 を渡すことを提案していますが、 のようNSJSONWritingNoOption = 0に定義されたオプションはありません。したがって、可能な値として 0 を定義しない列挙型に定数 (0) を割り当てています。

于 2013-08-28T09:39:47.410 に答える