Complex.Explicit Operator
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Definiert eine explizite Konvertierung zwischen einem Complex-Objekt und einem anderen Typ.
Überlädt
Explicit(UInt128 to Complex) |
Konvertiert einen UInt128 Wert explizit in eine komplexe Zahl mit doppelter Genauigkeit. |
Explicit(BigInteger to Complex) |
Definiert eine explizite Konvertierung eines BigInteger-Werts in eine komplexe Zahl. |
Explicit(Decimal to Complex) |
Definiert eine explizite Konvertierung eines Decimal-Werts in eine komplexe Zahl. |
Explicit(Int128 to Complex) |
Konvertiert einen Int128 Wert explizit in eine komplexe Zahl mit doppelter Genauigkeit. |
Explicit(UInt128 to Complex)
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
Wichtig
Diese API ist nicht CLS-kompatibel.
Konvertiert einen UInt128 Wert explizit in eine komplexe Zahl mit doppelter Genauigkeit.
public:
static explicit operator System::Numerics::Complex(UInt128 value);
[System.CLSCompliant(false)]
public static explicit operator System.Numerics.Complex (UInt128 value);
[<System.CLSCompliant(false)>]
static member op_Explicit : UInt128 -> System.Numerics.Complex
Public Shared Narrowing Operator CType (value As UInt128) As Complex
Parameter
- value
- UInt128
Der zu konvertierende Wert.
Gibt zurück
value
in eine komplexe Zahl mit doppelter Genauigkeit konvertiert.
- Attribute
Gilt für:
Explicit(BigInteger to Complex)
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
Definiert eine explizite Konvertierung eines BigInteger-Werts in eine komplexe Zahl.
public:
static explicit operator System::Numerics::Complex(System::Numerics::BigInteger value);
public static explicit operator System.Numerics.Complex (System.Numerics.BigInteger value);
static member op_Explicit : System.Numerics.BigInteger -> System.Numerics.Complex
Public Shared Narrowing Operator CType (value As BigInteger) As Complex
Parameter
- value
- BigInteger
Der Wert, der in eine komplexe Zahl konvertiert werden soll.
Gibt zurück
Eine komplexe Zahl mit einer reellen Komponente gleich value
und einer imaginären Komponente gleich 0.
Beispiele
Das folgende Beispiel veranschaulicht die explizite Konvertierung von BigInteger Werten in Complex Werte.
BigInteger[] numbers= {
((BigInteger) Double.MaxValue) * 2,
BigInteger.Parse("901345277852317852466891423"),
BigInteger.One };
foreach (BigInteger number in numbers)
{
Complex c1 = (Complex) number;
Console.WriteLine(c1);
}
// The example displays the following output:
// (Infinity, 0)
// (9.01345277852318E+26, 0)
// (1, 0)
let numbers =
[ (bigint Double.MaxValue) * 2I
BigInteger.Parse "901345277852317852466891423"
BigInteger.One ]
for number in numbers do
let c1 = Complex(float number, 0.)
printfn $"{number, 30} --> {c1}"
// The example displays the following output:
// (Infinity, 0)
// (9.01345277852318E+26, 0)
// (1, 0)
Dim numbers() As BigInteger = {
CType(Double.MaxValue, BigInteger) * 2,
BigInteger.Parse("901345277852317852466891423"),
BigInteger.One }
For Each number In numbers
Dim c1 As System.Numerics.Complex = CType(number,
System.Numerics.Complex)
Console.WriteLine(c1)
Next
' The example displays the following output:
' (Infinity, 0)
' (9.01345277852318E+26, 0)
' (1, 0)
Hinweise
Explizite Konvertierungsoperatoren definieren Typen, die in ein Complex Objekt konvertiert werden können. Sprachcompiler führen diese Konvertierung nicht automatisch durch, da dies zu Datenverlust führen kann. Stattdessen wird die Konvertierung nur ausgeführt, wenn ein Umwandlungsoperator (in C#) oder eine Konvertierungsfunktion (z CType
. B. in Visual Basic) verwendet wird. Andernfalls wird ein Compilerfehler angezeigt.
Die Konvertierung eines BigInteger Werts in den realen Teil einer komplexen Zahl kann zu einem Genauigkeitsverlust führen, da ein Double- der Typ der Eigenschaft der komplexen Zahl Real - weniger signifikante Ziffern aufweist als ein BigInteger.
Wenn die Konvertierung nicht erfolgreich ist, weil sich der BigInteger Wert außerhalb des Bereichs des Double Typs befindet, löst der Vorgang keinen aus OverflowException. Wenn value
stattdessen kleiner als MinValueist, ist das Ergebnis eine komplexe Zahl, die über einen Real Eigenschaftswert gleich verfügt NegativeInfinity. Wenn value
größer als MaxValueist, ist das Ergebnis eine komplexe Zahl, die einen Real Eigenschaftswert hat, der gleich ist PositiveInfinity.
Gilt für:
Explicit(Decimal to Complex)
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
Definiert eine explizite Konvertierung eines Decimal-Werts in eine komplexe Zahl.
public:
static explicit operator System::Numerics::Complex(System::Decimal value);
public static explicit operator System.Numerics.Complex (decimal value);
static member op_Explicit : decimal -> System.Numerics.Complex
Public Shared Narrowing Operator CType (value As Decimal) As Complex
Parameter
- value
- Decimal
Der Wert, der in eine komplexe Zahl konvertiert werden soll.
Gibt zurück
Eine komplexe Zahl mit einer reellen Komponente gleich value
und einer imaginären Komponente gleich 0.
Beispiele
Das folgende Beispiel veranschaulicht die explizite Konvertierung von Decimal Werten in Complex Werte.
decimal[] numbers = { Decimal.MinValue, -18.35m, 0m, 1893.019m,
Decimal.MaxValue };
foreach (decimal number in numbers)
{
System.Numerics.Complex c1 = (System.Numerics.Complex) number;
Console.WriteLine("{0,30} --> {1}", number, c1);
}
// The example displays the following output:
// -79228162514264337593543950335 --> (-7.92281625142643E+28, 0)
// -18.35 --> (-18.35, 0)
// 0 --> (0, 0)
// 1893.019 --> (1893.019, 0)
// 79228162514264337593543950335 --> (7.92281625142643E+28, 0)
let numbers = [ Decimal.MinValue; -18.35m; 0m; 1893.019m; Decimal.MaxValue ]
for number in numbers do
let c1 = Complex(float number, 0.)
printfn $"{number, 30} --> {c1}"
// The example displays the following output:
// -79228162514264337593543950335 --> (-7.92281625142643E+28, 0)
// -18.35 --> (-18.35, 0)
// 0 --> (0, 0)
// 1893.019 --> (1893.019, 0)
// 79228162514264337593543950335 --> (7.92281625142643E+28, 0)
Dim numbers() As Decimal = { Decimal.MinValue, -18.35d, 0d, 1893.019d,
Decimal.MaxValue }
For Each number In numbers
Dim c1 As System.Numerics.Complex = CType(number,
System.Numerics.Complex)
Console.WriteLine("{0,30} --> {1}", number, c1)
Next
' The example displays the following output:
' -79228162514264337593543950335 --> (-7.92281625142643E+28, 0)
' -18.35 --> (-18.3500003814697, 0)
' 0 --> (0, 0)
' 1893.019 --> (1893.01904296875, 0)
' 79228162514264337593543950335 --> (7.92281625142643E+28, 0)
Hinweise
Explizite Konvertierungsoperatoren definieren Typen, die in ein Complex Objekt konvertiert werden können. Sprachcompiler führen diese Konvertierung nicht automatisch durch, da dies zu Datenverlust führen kann. Stattdessen wird die Konvertierung nur ausgeführt, wenn ein Umwandlungsoperator (in C#) oder eine Konvertierungsfunktion (z CType
. B. in Visual Basic) verwendet wird. Andernfalls wird ein Compilerfehler angezeigt.
Die Konvertierung eines Decimal Werts in den realen Teil einer komplexen Zahl kann zu einem Genauigkeitsverlust führen, da ein Double- der Typ der Eigenschaft der komplexen Zahl Real - weniger signifikante Ziffern aufweist als ein Decimal.
Gilt für:
Explicit(Int128 to Complex)
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
Konvertiert einen Int128 Wert explizit in eine komplexe Zahl mit doppelter Genauigkeit.
public:
static explicit operator System::Numerics::Complex(Int128 value);
public static explicit operator System.Numerics.Complex (Int128 value);
static member op_Explicit : Int128 -> System.Numerics.Complex
Public Shared Narrowing Operator CType (value As Int128) As Complex
Parameter
- value
- Int128
Der zu konvertierende Wert.
Gibt zurück
value
in eine komplexe Zahl mit doppelter Genauigkeit konvertiert.