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
| Name | Beschreibung |
|---|---|
| Explicit(UInt128 to Complex) |
Wandelt einen UInt128 Wert explizit in eine komplexe Zahl mit doppelter Genauigkeit um. |
| 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) |
Wandelt einen Int128 Wert explizit in eine komplexe Zahl mit doppelter Genauigkeit um. |
Explicit(UInt128 to Complex)
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
Wichtig
Diese API ist nicht CLS-kompatibel.
Wandelt einen UInt128 Wert explizit in eine komplexe Zahl mit doppelter Genauigkeit um.
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
- 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, die eine reale Komponente gleich value und eine imaginäre Komponente gleich Null aufweist.
Beispiele
Im folgenden Beispiel wird die explizite Konvertierung von BigInteger Werten in Complex Werte veranschaulicht.
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 sie Datenverluste beinhalten kann. Stattdessen führen sie die Konvertierung nur aus, 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 tatsächlichen Teil einer komplexen Zahl kann zu einem Genauigkeitsverlust führen, da ein DoubleWert , der der Typ der Eigenschaft der komplexen Zahl Real ist, weniger signifikante Ziffern als eine BigIntegerhat.
Wenn die Konvertierung nicht erfolgreich ist, da sich der BigInteger Wert außerhalb des Double Typbereichs befindet, löst OverflowExceptionder Vorgang keinen .
value Wenn das Ergebnis kleiner als MinValueist, handelt es sich stattdessen um eine komplexe Zahl, die einen Real Eigenschaftswert aufweist, der NegativeInfinitygleich ist. Wenn value größer als MaxValueist, ist das Ergebnis eine komplexe Zahl, die einen Real Eigenschaftswert aufweist, der PositiveInfinitygleich ist.
Gilt für:
Explicit(Decimal to Complex)
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
- 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, die eine reale Komponente gleich value und eine imaginäre Komponente gleich Null aufweist.
Beispiele
Im folgenden Beispiel wird die explizite Konvertierung von Decimal Werten in Complex Werte veranschaulicht.
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 sie Datenverluste beinhalten kann. Stattdessen führen sie die Konvertierung nur aus, 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 tatsächlichen Teil einer komplexen Zahl kann zu einem Genauigkeitsverlust führen, da ein DoubleWert , der der Typ der Eigenschaft der komplexen Zahl Real ist, weniger signifikante Ziffern als eine Decimalhat.
Gilt für:
Explicit(Int128 to Complex)
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
- Quelle:
- Complex.cs
Wandelt einen Int128 Wert explizit in eine komplexe Zahl mit doppelter Genauigkeit um.
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.