Complex.Explicit Operatore
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Definisce una conversione esplicita tra un Complex oggetto e un altro tipo.
Overload
| Nome | Descrizione |
|---|---|
| Explicit(UInt128 to Complex) |
Converte in modo esplicito un UInt128 valore in un numero complesso a precisione doppia. |
| Explicit(BigInteger to Complex) |
Definisce una conversione esplicita di un BigInteger valore in un numero complesso. |
| Explicit(Decimal to Complex) |
Definisce una conversione esplicita di un Decimal valore in un numero complesso. |
| Explicit(Int128 to Complex) |
Converte in modo esplicito un Int128 valore in un numero complesso a precisione doppia. |
Explicit(UInt128 to Complex)
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
Importante
Questa API non è conforme a CLS.
Converte in modo esplicito un UInt128 valore in un numero complesso a precisione doppia.
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
Parametri
- value
- UInt128
Valore da convertire.
Restituisce
value convertito in un numero complesso a precisione doppia.
- Attributi
Si applica a
Explicit(BigInteger to Complex)
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
Definisce una conversione esplicita di un BigInteger valore in un numero complesso.
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
Parametri
- value
- BigInteger
Valore da convertire in un numero complesso.
Restituisce
Numero complesso con un componente reale uguale a value e un componente immaginario uguale a zero.
Esempio
Nell'esempio seguente viene illustrata la conversione esplicita dei BigInteger valori in Complex valori.
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)
Commenti
Gli operatori di conversione espliciti definiscono i tipi che possono essere convertiti in un Complex oggetto . I compilatori del linguaggio non eseguono questa conversione automaticamente perché possono comportare la perdita di dati. Eseguono invece la conversione solo se viene usato un operatore di cast (in C#) o una funzione di conversione (ad esempio CType in Visual Basic). In caso contrario, visualizzano un errore del compilatore.
La conversione di un BigInteger valore nella parte reale di un numero complesso può comportare una perdita di precisione perché un Doubleoggetto , che è il tipo della proprietà del Real numero complesso, ha meno cifre significative di un oggetto BigInteger.
Se la conversione non riesce perché il BigInteger valore non è compreso nell'intervallo del Double tipo, l'operazione non genera un'eccezione OverflowException. Se invece value è minore di MinValue, il risultato è un numero complesso con un Real valore della proprietà uguale a NegativeInfinity. Se value è maggiore di MaxValue, il risultato è un numero complesso con un Real valore della proprietà uguale a PositiveInfinity.
Si applica a
Explicit(Decimal to Complex)
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
Definisce una conversione esplicita di un Decimal valore in un numero complesso.
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
Parametri
- value
- Decimal
Valore da convertire in un numero complesso.
Restituisce
Numero complesso con un componente reale uguale a value e un componente immaginario uguale a zero.
Esempio
Nell'esempio seguente viene illustrata la conversione esplicita dei Decimal valori in Complex valori.
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)
Commenti
Gli operatori di conversione espliciti definiscono i tipi che possono essere convertiti in un Complex oggetto . I compilatori del linguaggio non eseguono questa conversione automaticamente perché possono comportare la perdita di dati. Eseguono invece la conversione solo se viene usato un operatore di cast (in C#) o una funzione di conversione (ad esempio CType in Visual Basic). In caso contrario, visualizzano un errore del compilatore.
La conversione di un Decimal valore nella parte reale di un numero complesso può comportare una perdita di precisione perché un Doubleoggetto , che è il tipo della proprietà del Real numero complesso, ha meno cifre significative di un oggetto Decimal.
Si applica a
Explicit(Int128 to Complex)
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
- Origine:
- Complex.cs
Converte in modo esplicito un Int128 valore in un numero complesso a precisione doppia.
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
Parametri
- value
- Int128
Valore da convertire.
Restituisce
value convertito in un numero complesso a precisione doppia.