私はbool
値を送る必要があるHTTP
リクエストを作成しています。私はその両方で試しました。@(YES)vs [NS番号番号WithBool:はい]
両方とも同じように動作しています。私は混乱していますが、それはより良いですか?それらの違いは何ですか?
私はbool
値を送る必要があるHTTP
リクエストを作成しています。私はその両方で試しました。@(YES)vs [NS番号番号WithBool:はい]
両方とも同じように動作しています。私は混乱していますが、それはより良いですか?それらの違いは何ですか?
@(YES)
は、[NSNumber numberWithBool:YES]
と同じことを行うリテラルです。リテラルのパフォーマンスがダイレクトコールのように少し遅くなるかどうかはわかりません。
1は、literalです。もう一方はconvienienceイニシャライザによって作成されます。
彼らは同じ内容の同じ種類のオブジェクトになりますが、私は最初の方があなた(そしてあなたのコードを見ている他の人)にとって読みやすくなると思われます。
2つの方法に違いはありませんが、いずれかで問題ないはずです。私が好むものは[NSNumber numberWithBool:YES]
です。デバッグのためにコードに戻ってくると読みやすくなります。 @(Yes)はnsnumberのリテラル構文です。NSStringを作成する@ "string"を使用すると全く同じwoks
Nope.Theコンパイラは@YES
を[NSNumber numberWithBool:YES]
に変換します。
@(YES)はコンパイラの特性です。実際、@(YES)を[NSNumber numberWithBool:YES]に変換すると、パフォーマンスに差はありません。便宜と可読性のために提供されています(@ []、@ {}と似ています)。
boolを送信するには:[NSNumber numberWithInt:1]
"Better"は何ですか? –