Operator

&+=(_:_:)

Adds two values and stores the result in the left-hand-side variable, wrapping any overflow.

Declaration

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

Parameters

lhs

The first value to add.

rhs

The second value to add.

Discussion

The masking addition assignment operator (&+=) silently wraps any overflow that occurs during the operation. In the following example, the sum of 100 and 121 is greater than the maximum representable Int8 value, so the result is the partial value after discarding the overflowing bits.

var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)

For more about arithmetic with overflow operators, see Overflow Operators in The Swift Programming Language.

See Also

Masked Arithmetic

static func &+ (Int, Int) -> Int

Returns the sum of the two given values, wrapping the result in case of any overflow.

static func &- (Int, Int) -> Int

Returns the difference of the two given values, wrapping the result in case of any overflow.

static func &* (Int, Int) -> Int

Returns the product of the two given values, wrapping the result in case of any overflow.

static func &-= (inout Int, Int)

Subtracts the second value from the first and stores the difference in the left-hand-side variable, wrapping any overflow.

static func &*= (inout Int, Int)

Multiplies two values and stores the result in the left-hand-side variable, wrapping any overflow.