## Definition

Adds a specified number to another specified number, where at least one of them is a complex number, and the other could be a double-precision real number.

 Add(Double, Complex) Adds a double-precision real number to a complex number and returns the result. Add(Complex, Double) Adds a complex number to a double-precision real number and returns the result. Add(Complex, Complex) Adds two complex numbers and returns the result.

## Examples

The following example illustrates addition with complex numbers.

``````using System;
using System.Numerics;

public class Example
{
public static void Main()
{
Complex[] values= { new Complex(12.3, -1.4),
new Complex(-6.2, 3.1),
new Complex(8.9, 1.5) };
foreach (var c1 in values)
foreach (var c2 in values)
Console.WriteLine("{0} + {1} = {2}", c1, c2,
}
}
// The example displays the following output:
//       (12.3, -1.4) + (12.3, -1.4) = (24.6, -2.8)
//       (12.3, -1.4) + (-6.2, 3.1) = (6.1, 1.7)
//       (12.3, -1.4) + (8.9, 1.5) = (21.2, 0.1)
//       (-6.2, 3.1) + (12.3, -1.4) = (6.1, 1.7)
//       (-6.2, 3.1) + (-6.2, 3.1) = (-12.4, 6.2)
//       (-6.2, 3.1) + (8.9, 1.5) = (2.7, 4.6)
//       (8.9, 1.5) + (12.3, -1.4) = (21.2, 0.1)
//       (8.9, 1.5) + (-6.2, 3.1) = (2.7, 4.6)
//       (8.9, 1.5) + (8.9, 1.5) = (17.8, 3)
``````
``````Imports System.Numerics

Module modMain
Public Sub Main()
Dim values() As Complex = { New Complex(12.3, -1.4),
New Complex(-6.2, 3.1),
New Complex(8.9, 1.5) }
For Each c1 In values
For Each c2 In values
Console.WriteLine("{0} + {1} = {2}", c1, c2,
Next
Next
End Sub
End Module
' The example displays the following output:
'       (12.3, -1.4) + (12.3, -1.4) = (24.6, -2.8)
'       (12.3, -1.4) + (-6.2, 3.1) = (6.1, 1.7)
'       (12.3, -1.4) + (8.9, 1.5) = (21.2, 0.1)
'       (-6.2, 3.1) + (12.3, -1.4) = (6.1, 1.7)
'       (-6.2, 3.1) + (-6.2, 3.1) = (-12.4, 6.2)
'       (-6.2, 3.1) + (8.9, 1.5) = (2.7, 4.6)
'       (8.9, 1.5) + (12.3, -1.4) = (21.2, 0.1)
'       (8.9, 1.5) + (-6.2, 3.1) = (2.7, 4.6)
'       (8.9, 1.5) + (8.9, 1.5) = (17.8, 3)
``````

## Remarks

If the method call results in an overflow in either the real or imaginary component, the value of the component is either Double.PositiveInfinity or Double.NegativeInfinity.

Languages that do not support custom operators can use the Add method to perform addition with complex numbers.

The Add methods that receive one double are more efficient than the methods that receive two complex numbers.

Adds a double-precision real number to a complex number and returns the result.

``````public:
static System::Numerics::Complex Add(double left, System::Numerics::Complex right);``````
``public static System.Numerics.Complex Add (double left, System.Numerics.Complex right);``
``static member Add : double * System.Numerics.Complex -> System.Numerics.Complex``
``Public Shared Function Add (left As Double, right As Complex) As Complex``

#### Parameters

left
Double

The double-precision real value to add.

right
Complex

#### Returns

Complex

The sum of `left` and `right`.

### Remarks

The addition of a real number (which can be regarded as the complex number a + 0i) and a complex number (c + di) takes the following form:

(a + c) + di

### Applies to

Adds a complex number to a double-precision real number and returns the result.

``````public:
static System::Numerics::Complex Add(System::Numerics::Complex left, double right);``````
``public static System.Numerics.Complex Add (System.Numerics.Complex left, double right);``
``static member Add : System.Numerics.Complex * double -> System.Numerics.Complex``
``Public Shared Function Add (left As Complex, right As Double) As Complex``

#### Parameters

left
Complex

right
Double

The double-precision real value to add.

#### Returns

Complex

The sum of `left` and `right`.

### Remarks

The addition of a complex number (a + bi) and a real number (which can be regarded as the complex number c + 0i) takes the following form:

(a + c) + bi

### Applies to

Adds two complex numbers and returns the result.

``````public:
static System::Numerics::Complex Add(System::Numerics::Complex left, System::Numerics::Complex right);``````
``public static System.Numerics.Complex Add (System.Numerics.Complex left, System.Numerics.Complex right);``
``static member Add : System.Numerics.Complex * System.Numerics.Complex -> System.Numerics.Complex``
``Public Shared Function Add (left As Complex, right As Complex) As Complex``

#### Parameters

left
Complex

The first complex number to add.

right
Complex

The second complex number to add.

#### Returns

Complex

The sum of `left` and `right`.

### Remarks

The addition of a complex number, a + bi, and a second complex number, c + di, takes the following form:

(a + c) + (b + d)i.