# Complex.Multiply Operator

## Definition

Important

Some information relates to prerelease product that may be substantially modified before itâ€™s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

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

## Overloads

Multiply(Double, Complex) |
Multiplies a specified double-precision real number by a specified complex number. |

Multiply(Complex, Double) |
Multiplies the specified complex number by a specified double-precision real number. |

Multiply(Complex, Complex) |
Multiplies two specified complex numbers. |

## Remarks

The Multiply operator allows performing multiplication operations that involve complex numbers. It enables code such as the following:

```
Complex c1 = Complex.One;
Complex c2 = new Complex(1.4, 2.3);
Complex c3 = c1 * c2;
```

```
let c1 = Complex.One
let c2 = Complex(1.4, 2.3)
let c3 = c1 * c2
```

```
Dim c1 As Complex = Complex.One
Dim c2 As New Complex(1.4, 2.3)
Dim c3 As Complex = c1 * c2
```

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

Languages that don't support custom operators can call the Multiply equivalent group of methods instead.

The Multiply operators that receive one double are more efficient than the operators that receive two Complex numbers.

## Multiply(Double, Complex)

- Source:
- Complex.cs

- Source:
- Complex.cs

- Source:
- Complex.cs

Multiplies a specified double-precision real number by a specified complex number.

```
public:
static System::Numerics::Complex operator *(double left, System::Numerics::Complex right);
```

`public static System.Numerics.Complex operator * (double left, System.Numerics.Complex right);`

`static member ( * ) : double * System.Numerics.Complex -> System.Numerics.Complex`

`Public Shared Operator * (left As Double, right As Complex) As Complex`

#### Parameters

- left
- Double

The double-precision real value to multiply.

- right
- Complex

The complex value to multiply.

#### Returns

The product of `left`

and `right`

, as a complex number.

### Remarks

The multiplication of a real number (which can be regarded as the complex number `a + 0i`

) and a complex number (`c + di`

) takes the following form:

$ac + adi$

Languages that don't support custom operators can call the Complex.Multiply(Double, Complex) equivalent method instead.

### See also

### Applies to

## Multiply(Complex, Double)

- Source:
- Complex.cs

- Source:
- Complex.cs

- Source:
- Complex.cs

Multiplies the specified complex number by a specified double-precision real number.

```
public:
static System::Numerics::Complex operator *(System::Numerics::Complex left, double right);
```

`public static System.Numerics.Complex operator * (System.Numerics.Complex left, double right);`

`static member ( * ) : System.Numerics.Complex * double -> System.Numerics.Complex`

`Public Shared Operator * (left As Complex, right As Double) As Complex`

#### Parameters

- left
- Complex

The complex value to multiply.

- right
- Double

The double-precision real value to multiply.

#### Returns

The product of `left`

and `right`

, as a complex number.

### Remarks

The multiplication of a complex number (`a + bi`

) and a real number (which can be regarded as the complex number `c + 0i`

) takes the following form:

$ac + bci$

Languages that don't support custom operators can call the Complex.Multiply(Complex, Double) equivalent method instead.

### See also

### Applies to

## Multiply(Complex, Complex)

- Source:
- Complex.cs

- Source:
- Complex.cs

- Source:
- Complex.cs

Multiplies two specified complex numbers.

```
public:
static System::Numerics::Complex operator *(System::Numerics::Complex left, System::Numerics::Complex right);
```

```
public:
static System::Numerics::Complex operator *(System::Numerics::Complex left, System::Numerics::Complex right) = System::Numerics::IMultiplyOperators<System::Numerics::Complex, System::Numerics::Complex, System::Numerics::Complex>::op_Multiply;
```

`public static System.Numerics.Complex operator * (System.Numerics.Complex left, System.Numerics.Complex right);`

`static member ( * ) : System.Numerics.Complex * System.Numerics.Complex -> System.Numerics.Complex`

`Public Shared Operator * (left As Complex, right As Complex) As Complex`

#### Parameters

- left
- Complex

The first complex value to multiply.

- right
- Complex

The second complex value to multiply.

#### Returns

The product of `left`

and `right`

.

#### Implements

### Remarks

The multiplication of a complex number, `a + bi`

, and a second complex number, `c + di`

, takes the following form:

$(ac - bd) + (ad + bc)i$

Languages that don't support custom operators can call the Complex.Multiply(Complex, Complex) equivalent method instead.