Operator 演算子

&-=(_:_:)

Subtracts the second value from the first and stores the difference in the left-hand-side variable, wrapping any overflow. 2番目の値を最初のものから減じてその差を左手側の変数の中に格納します、あらゆるオーバーフローをラップします。

Declaration 宣言

static func &-= (lhs: inout Int, rhs: Int)

Parameters パラメータ

lhs

A numeric value. ある数値。

rhs

The value to subtract from lhs. lhsから減じる値。

Discussion 解説

The masking subtraction assignment operator (&-=) silently wraps any overflow that occurs during the operation. In the following example, the difference of 10 and 21 is less than zero, the minimum representable UInt value, so the result is the result is the partial value after discarding the overflowing bits. マスク減算代入演算子(&-=)は、演算の間に起こるあらゆるオーバーフローを黙ってラップします。以下の例において、1021の差はゼロ、最小限表現可能なUInt値、よりも少ないです、それで結果はオーバーフローするビットを廃棄後の部分的な値です。


var x: Int8 = 21
x &-= 10
// x == 11
var y: UInt8 = 10
y &-= 21
// y == 245 (after overflow)

For more about arithmetic with overflow operators, see Overflow Operators in The Swift Programming Language. オーバーフロー演算子を使う算術についてさらには、オーバーフロー演算子Swiftプログラミング言語で見てください。

See Also 参照

Masked Arithmetic 隠された算術