Complex.Explicit Operator
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Complex オブジェクトと別の型の間の明示的な変換を定義します。
Explicit(UInt128 to Complex) |
値を UInt128 倍精度複素数に明示的に変換します。 |
Explicit(BigInteger to Complex) |
BigInteger 値から複素数への明示的な型変換を定義します。 |
Explicit(Decimal to Complex) |
Decimal 値から複素数への明示的な型変換を定義します。 |
Explicit(Int128 to Complex) |
値を Int128 倍精度複素数に明示的に変換します。 |
- ソース:
- Complex.cs
- ソース:
- Complex.cs
- ソース:
- Complex.cs
重要
この API は CLS 準拠ではありません。
値を UInt128 倍精度複素数に明示的に変換します。
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
パラメーター
- value
- UInt128
変換する値。
戻り値
value
倍精度複素数に変換されます。
- 属性
適用対象
.NET 9 およびその他のバージョン
製品 | バージョン |
---|---|
.NET | 7, 8, 9 |
- ソース:
- Complex.cs
- ソース:
- Complex.cs
- ソース:
- Complex.cs
BigInteger 値から複素数への明示的な型変換を定義します。
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
パラメーター
- value
- BigInteger
複素数に変換する値。
戻り値
実数部が value
で、虚数部が 0 である複素数。
例
次の例は、値から値への明示的な変換 BigInteger を Complex 示しています。
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)
注釈
明示的な変換演算子は、オブジェクトに変換できる型を Complex 定義します。 言語コンパイラは、データ損失を伴う可能性があるため、この変換を自動的に実行しません。 代わりに、キャスト演算子 (C#) または変換関数 (Visual Basic など CType
) が使用されている場合にのみ、変換を実行します。 それ以外の場合は、コンパイラ エラーが表示されます。
複素数の実際のBigInteger部分に値を変換すると、複素数のプロパティの型Realである が よりも有効桁数BigIntegerが少ないためDouble、精度が失われる可能性があります。
値が型の範囲外であるために BigInteger 変換が失敗した Double 場合、操作は を OverflowExceptionスローしません。 代わりに、 が よりMinValue小さい場合value
、結果は と等しいNegativeInfinityプロパティ値をReal持つ複素数になります。 が よりMaxValue大きい場合value
、結果は と等しいPositiveInfinityプロパティ値をReal持つ複素数になります。
適用対象
.NET 9 およびその他のバージョン
製品 | バージョン |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1 |
UWP | 10.0 |
- ソース:
- Complex.cs
- ソース:
- Complex.cs
- ソース:
- Complex.cs
Decimal 値から複素数への明示的な型変換を定義します。
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
パラメーター
- value
- Decimal
複素数に変換する値。
戻り値
実数部が value
で、虚数部が 0 である複素数。
例
次の例は、値から値への明示的な変換 Decimal を Complex 示しています。
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)
注釈
明示的な変換演算子は、オブジェクトに変換できる型を Complex 定義します。 言語コンパイラは、データ損失を伴う可能性があるため、この変換を自動的に実行しません。 代わりに、キャスト演算子 (C#) または変換関数 (Visual Basic など CType
) が使用されている場合にのみ、変換を実行します。 それ以外の場合は、コンパイラ エラーが表示されます。
複素数の実際のDecimal部分に値を変換すると、複素数のプロパティの型Realである が よりも有効桁数Decimalが少ないためDouble、精度が失われる可能性があります。
適用対象
.NET 9 およびその他のバージョン
製品 | バージョン |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1 |
UWP | 10.0 |
- ソース:
- Complex.cs
- ソース:
- Complex.cs
- ソース:
- Complex.cs
値を Int128 倍精度複素数に明示的に変換します。
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
パラメーター
- value
- Int128
変換する値。
戻り値
value
倍精度複素数に変換されます。
適用対象
.NET 9 およびその他のバージョン
製品 | バージョン |
---|---|
.NET | 7, 8, 9 |
.NET に関するフィードバック
.NET はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。