Initializer

init(nan:signaling:)

Creates a NaN (“not a number”) value with the specified payload. 指定されたペイロードをもつNaN(「非数」)値を作成します。

Declaration 宣言

init(nan payload: Float80.RawSignificand, signaling: Bool)

Parameters パラメータ

payload

The payload to use for the new NaN value. 新しいNaN値のために使うためのペイロード。

signaling

Pass true to create a signaling NaN or false to create a quiet NaN. シグナルNaNを作成するためにtrueを、またはクワイエットNaNを作成するためにfalseを渡してください。

Discussion 解説

NaN values compare not equal to every value, including themselves. Most operations with a NaN operand produce a NaN result. Don’t use the equal-to operator (==) to test whether a value is NaN. Instead, use the value’s isNaN property. NaNは、それら自身を含めてあらゆる値に対して等しくないと比較されます。NaN演算数を使うほとんどの演算は、結果NaNを生成します。同等演算子(==を使ってある値がNaNかどうかをテストしないでください。代わりに、その値のisNaNプロパティを使ってください。


let x = Float80(nan: 0, signaling: false)
print(x == .nan)
// Prints "false"
print(x.isNaN)
// Prints "true"