Complex Struct
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Vertegenwoordigt een complex getal.
public value class Complex : IEquatable<System::Numerics::Complex>, IFormattable
public value class Complex : IEquatable<System::Numerics::Complex>, IParsable<System::Numerics::Complex>, ISpanParsable<System::Numerics::Complex>, IUtf8SpanParsable<System::Numerics::Complex>, System::Numerics::IAdditionOperators<System::Numerics::Complex, System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IAdditiveIdentity<System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IDecrementOperators<System::Numerics::Complex>, System::Numerics::IDivisionOperators<System::Numerics::Complex, System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IEqualityOperators<System::Numerics::Complex, System::Numerics::Complex, bool>, System::Numerics::IIncrementOperators<System::Numerics::Complex>, System::Numerics::IMultiplicativeIdentity<System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IMultiplyOperators<System::Numerics::Complex, System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::INumberBase<System::Numerics::Complex>, System::Numerics::ISignedNumber<System::Numerics::Complex>, System::Numerics::ISubtractionOperators<System::Numerics::Complex, System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IUnaryNegationOperators<System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IUnaryPlusOperators<System::Numerics::Complex, System::Numerics::Complex>
public value class Complex : IEquatable<System::Numerics::Complex>, IParsable<System::Numerics::Complex>, ISpanParsable<System::Numerics::Complex>, System::Numerics::IAdditionOperators<System::Numerics::Complex, System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IAdditiveIdentity<System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IDecrementOperators<System::Numerics::Complex>, System::Numerics::IDivisionOperators<System::Numerics::Complex, System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IEqualityOperators<System::Numerics::Complex, System::Numerics::Complex, bool>, System::Numerics::IIncrementOperators<System::Numerics::Complex>, System::Numerics::IMultiplicativeIdentity<System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IMultiplyOperators<System::Numerics::Complex, System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::INumberBase<System::Numerics::Complex>, System::Numerics::ISignedNumber<System::Numerics::Complex>, System::Numerics::ISubtractionOperators<System::Numerics::Complex, System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IUnaryNegationOperators<System::Numerics::Complex, System::Numerics::Complex>, System::Numerics::IUnaryPlusOperators<System::Numerics::Complex, System::Numerics::Complex>
public struct Complex : IEquatable<System.Numerics.Complex>, IFormattable
public readonly struct Complex : IEquatable<System.Numerics.Complex>, IParsable<System.Numerics.Complex>, ISpanParsable<System.Numerics.Complex>, IUtf8SpanParsable<System.Numerics.Complex>, System.Numerics.IAdditionOperators<System.Numerics.Complex,System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IAdditiveIdentity<System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IDecrementOperators<System.Numerics.Complex>, System.Numerics.IDivisionOperators<System.Numerics.Complex,System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IEqualityOperators<System.Numerics.Complex,System.Numerics.Complex,bool>, System.Numerics.IIncrementOperators<System.Numerics.Complex>, System.Numerics.IMultiplicativeIdentity<System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IMultiplyOperators<System.Numerics.Complex,System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.INumberBase<System.Numerics.Complex>, System.Numerics.ISignedNumber<System.Numerics.Complex>, System.Numerics.ISubtractionOperators<System.Numerics.Complex,System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IUnaryNegationOperators<System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IUnaryPlusOperators<System.Numerics.Complex,System.Numerics.Complex>
public readonly struct Complex : IEquatable<System.Numerics.Complex>, IFormattable
public readonly struct Complex : IEquatable<System.Numerics.Complex>, IParsable<System.Numerics.Complex>, ISpanParsable<System.Numerics.Complex>, System.Numerics.IAdditionOperators<System.Numerics.Complex,System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IAdditiveIdentity<System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IDecrementOperators<System.Numerics.Complex>, System.Numerics.IDivisionOperators<System.Numerics.Complex,System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IEqualityOperators<System.Numerics.Complex,System.Numerics.Complex,bool>, System.Numerics.IIncrementOperators<System.Numerics.Complex>, System.Numerics.IMultiplicativeIdentity<System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IMultiplyOperators<System.Numerics.Complex,System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.INumberBase<System.Numerics.Complex>, System.Numerics.ISignedNumber<System.Numerics.Complex>, System.Numerics.ISubtractionOperators<System.Numerics.Complex,System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IUnaryNegationOperators<System.Numerics.Complex,System.Numerics.Complex>, System.Numerics.IUnaryPlusOperators<System.Numerics.Complex,System.Numerics.Complex>
[System.Serializable]
public struct Complex : IEquatable<System.Numerics.Complex>, IFormattable
type Complex = struct
interface IFormattable
type Complex = struct
interface IFormattable
interface IParsable<Complex>
interface ISpanFormattable
interface ISpanParsable<Complex>
interface IAdditionOperators<Complex, Complex, Complex>
interface IAdditiveIdentity<Complex, Complex>
interface IDecrementOperators<Complex>
interface IDivisionOperators<Complex, Complex, Complex>
interface IEqualityOperators<Complex, Complex, bool>
interface IIncrementOperators<Complex>
interface IMultiplicativeIdentity<Complex, Complex>
interface IMultiplyOperators<Complex, Complex, Complex>
interface INumberBase<Complex>
interface IUtf8SpanFormattable
interface IUtf8SpanParsable<Complex>
interface ISubtractionOperators<Complex, Complex, Complex>
interface IUnaryNegationOperators<Complex, Complex>
interface IUnaryPlusOperators<Complex, Complex>
interface ISignedNumber<Complex>
type Complex = struct
interface IFormattable
interface IParsable<Complex>
interface ISpanFormattable
interface ISpanParsable<Complex>
interface IUtf8SpanFormattable
interface IUtf8SpanParsable<Complex>
interface IAdditionOperators<Complex, Complex, Complex>
interface IAdditiveIdentity<Complex, Complex>
interface IDecrementOperators<Complex>
interface IDivisionOperators<Complex, Complex, Complex>
interface IEqualityOperators<Complex, Complex, bool>
interface IIncrementOperators<Complex>
interface IMultiplicativeIdentity<Complex, Complex>
interface IMultiplyOperators<Complex, Complex, Complex>
interface INumberBase<Complex>
interface ISubtractionOperators<Complex, Complex, Complex>
interface IUnaryNegationOperators<Complex, Complex>
interface IUnaryPlusOperators<Complex, Complex>
interface ISignedNumber<Complex>
type Complex = struct
interface IFormattable
interface IParsable<Complex>
interface ISpanFormattable
interface ISpanParsable<Complex>
interface IAdditionOperators<Complex, Complex, Complex>
interface IAdditiveIdentity<Complex, Complex>
interface IDecrementOperators<Complex>
interface IDivisionOperators<Complex, Complex, Complex>
interface IEqualityOperators<Complex, Complex, bool>
interface IIncrementOperators<Complex>
interface IMultiplicativeIdentity<Complex, Complex>
interface IMultiplyOperators<Complex, Complex, Complex>
interface INumberBase<Complex>
interface ISubtractionOperators<Complex, Complex, Complex>
interface IUnaryNegationOperators<Complex, Complex>
interface IUnaryPlusOperators<Complex, Complex>
interface ISignedNumber<Complex>
type Complex = struct
interface IFormattable
interface IParsable<Complex>
interface ISpanFormattable
interface ISpanParsable<Complex>
interface IAdditionOperators<Complex, Complex, Complex>
interface IAdditiveIdentity<Complex, Complex>
interface IDecrementOperators<Complex>
interface IDivisionOperators<Complex, Complex, Complex>
interface IEqualityOperators<Complex, Complex, bool>
interface IIncrementOperators<Complex>
interface IMultiplicativeIdentity<Complex, Complex>
interface IMultiplyOperators<Complex, Complex, Complex>
interface INumberBase<Complex>
interface ISubtractionOperators<Complex, Complex, Complex>
interface IUnaryNegationOperators<Complex, Complex>
interface IUnaryPlusOperators<Complex, Complex>
interface IUtf8SpanFormattable
interface IUtf8SpanParsable<Complex>
interface ISignedNumber<Complex>
[<System.Serializable>]
type Complex = struct
interface IFormattable
Public Structure Complex
Implements IEquatable(Of Complex), IFormattable
Public Structure Complex
Implements IAdditionOperators(Of Complex, Complex, Complex), IAdditiveIdentity(Of Complex, Complex), IDecrementOperators(Of Complex), IDivisionOperators(Of Complex, Complex, Complex), IEqualityOperators(Of Complex, Complex, Boolean), IEquatable(Of Complex), IIncrementOperators(Of Complex), IMultiplicativeIdentity(Of Complex, Complex), IMultiplyOperators(Of Complex, Complex, Complex), INumberBase(Of Complex), IParsable(Of Complex), ISignedNumber(Of Complex), ISpanParsable(Of Complex), ISubtractionOperators(Of Complex, Complex, Complex), IUnaryNegationOperators(Of Complex, Complex), IUnaryPlusOperators(Of Complex, Complex), IUtf8SpanParsable(Of Complex)
Public Structure Complex
Implements IAdditionOperators(Of Complex, Complex, Complex), IAdditiveIdentity(Of Complex, Complex), IDecrementOperators(Of Complex), IDivisionOperators(Of Complex, Complex, Complex), IEqualityOperators(Of Complex, Complex, Boolean), IEquatable(Of Complex), IIncrementOperators(Of Complex), IMultiplicativeIdentity(Of Complex, Complex), IMultiplyOperators(Of Complex, Complex, Complex), INumberBase(Of Complex), IParsable(Of Complex), ISignedNumber(Of Complex), ISpanParsable(Of Complex), ISubtractionOperators(Of Complex, Complex, Complex), IUnaryNegationOperators(Of Complex, Complex), IUnaryPlusOperators(Of Complex, Complex)
- Overname
- Kenmerken
- Implementeringen
-
IEquatable<Complex> IFormattable IEquatable<TSelf> IParsable<Complex> IParsable<TSelf> ISpanFormattable ISpanParsable<Complex> ISpanParsable<TSelf> IUtf8SpanFormattable IUtf8SpanParsable<Complex> IUtf8SpanParsable<TSelf> IAdditionOperators<Complex,Complex,Complex> IAdditionOperators<TSelf,TSelf,TSelf> IAdditiveIdentity<Complex,Complex> IAdditiveIdentity<TSelf,TSelf> IDecrementOperators<Complex> IDecrementOperators<TSelf> IDivisionOperators<Complex,Complex,Complex> IDivisionOperators<TSelf,TSelf,TSelf> IEqualityOperators<Complex,Complex,Boolean> IEqualityOperators<TSelf,TSelf,Boolean> IIncrementOperators<Complex> IIncrementOperators<TSelf> IMultiplicativeIdentity<Complex,Complex> IMultiplicativeIdentity<TSelf,TSelf> IMultiplyOperators<Complex,Complex,Complex> IMultiplyOperators<TSelf,TSelf,TSelf> INumberBase<Complex> INumberBase<TSelf> ISignedNumber<Complex> ISubtractionOperators<Complex,Complex,Complex> ISubtractionOperators<TSelf,TSelf,TSelf> IUnaryNegationOperators<Complex,Complex> IUnaryNegationOperators<TSelf,TSelf> IUnaryPlusOperators<Complex,Complex> IUnaryPlusOperators<TSelf,TSelf>
Opmerkingen
Een complex getal is een getal dat een reëel getal en een imaginair getaldeel omvat. Een complex getal z wordt meestal geschreven in de vorm z = x + yi, waarbij x en y reële getallen zijn, en i is de imaginaire eenheid met de eigenschap i2 = -1. Het reële deel van het complexe getal wordt vertegenwoordigd door x en het imaginaire deel van het complexe getal wordt weergegeven door y.
Het Complex type maakt gebruik van het Cartesische coördinatensysteem (echt, imaginair) bij het instantiëren en bewerken van complexe getallen. Een complex getal kan worden weergegeven als een punt in een tweedimensionaal coördinatensysteem, dat het complexe vlak wordt genoemd. Het werkelijke deel van het complexe getal wordt op de x-as (de horizontale as) weergegeven en het imaginaire deel wordt op de y-as (de verticale as) weergegeven.
Elk punt in het complexe vlak kan ook worden uitgedrukt op basis van de absolute waarde, met behulp van het polaire coördinaatsysteem. In polaire coördinaten wordt een punt gekenmerkt door twee getallen:
- De grootte, de afstand van het punt van de oorsprong (dat wil wel 0,0 of het punt waarop de x-as en de y-as elkaar kruisen).
- De fase, die de hoek is tussen de reële as en de lijn getrokken van de oorsprong naar het punt.
Een complex getal instantiëren
U kunt op een van de volgende manieren een waarde toewijzen aan een complex getal:
Door twee Double waarden door te geven aan de constructor. De eerste waarde vertegenwoordigt het werkelijke deel van het complexe getal en de tweede waarde vertegenwoordigt het imaginaire deel. Deze waarden vertegenwoordigen de positie van het complexe getal in het tweedimensionale Cartesische coördinatensysteem.
Door de statische methode (
Sharedin Visual Basic) Complex.FromPolarCoordinates aan te roepen om een complex getal te maken op basis van de polaire coördinaten.Door een Byte, SByte, Int16, UInt16, Int32, UInt32, Int64, UInt64, Single of Double waarde aan een Complex object toe te wijzen. De waarde wordt het werkelijke deel van het complexe getal en het imaginaire deel is gelijk aan 0.
Door een waarde Decimal (in C#) te casten of te converteren (in Visual Basic) naar BigInteger een Complex object. De waarde wordt het werkelijke deel van het complexe getal en het imaginaire deel is gelijk aan 0.
Door het complexe getal dat wordt geretourneerd door een methode of operator toe te wijzen aan een Complex object. Is bijvoorbeeld Complex.Add een statische methode die een complex getal retourneert dat de som van twee complexe getallen is en de Complex.Addition operator twee complexe getallen optelt en het resultaat retourneert.
In het volgende voorbeeld ziet u elk van deze vijf manieren om een waarde toe te wijzen aan een complex getal.
using System;
using System.Numerics;
public class CreateEx
{
public static void Run()
{
// Create a complex number by calling its class constructor.
Complex c1 = new Complex(12, 6);
Console.WriteLine(c1);
// Assign a Double to a complex number.
Complex c2 = 3.14;
Console.WriteLine(c2);
// Cast a Decimal to a complex number.
Complex c3 = (Complex)12.3m;
Console.WriteLine(c3);
// Assign the return value of a method to a Complex variable.
Complex c4 = Complex.Pow(Complex.One, -1);
Console.WriteLine(c4);
// Assign the value returned by an operator to a Complex variable.
Complex c5 = Complex.One + Complex.One;
Console.WriteLine(c5);
// Instantiate a complex number from its polar coordinates.
Complex c6 = Complex.FromPolarCoordinates(10, .524);
Console.WriteLine(c6);
}
}
// The example displays the following output:
// (12, 6)
// (3.14, 0)
// (12.3, 0)
// (1, 0)
// (2, 0)
// (8.65824721882145, 5.00347430269914)
Imports System.Numerics
Module Example
Public Sub Run()
' Create a complex number by calling its class constructor.
Dim c1 As New Complex(12, 6)
Console.WriteLine(c1)
' Assign a Double to a complex number.
Dim c2 As Complex = 3.14
Console.WriteLine(c2)
' Cast a Decimal to a complex number.
Dim c3 As Complex = CType(12.3d, Complex)
Console.WriteLine(c3)
' Assign the return value of a method to a Complex variable.
Dim c4 As Complex = Complex.Pow(Complex.One, -1)
Console.WriteLine(c4)
' Assign the value returned by an operator to a Complex variable.
Dim c5 As Complex = Complex.One + Complex.One
Console.WriteLine(c5)
' Instantiate a complex number from its polar coordinates.
Dim c6 As Complex = Complex.FromPolarCoordinates(10, .524)
Console.WriteLine(c6)
End Sub
End Module
' The example displays the following output:
' (12, 6)
' (3.14, 0)
' (12.3000001907349, 0)
' (1, 0)
' (2, 0)
' (8.65824721882145, 5.00347430269914)
Bewerkingen met complexe getallen
De Complex structuur in .NET bevat leden die de volgende functionaliteit bieden:
- Methoden om twee complexe getallen te vergelijken om te bepalen of ze gelijk zijn.
- Operators voor het uitvoeren van rekenkundige bewerkingen op complexe getallen. Complex met operators kunt u optellen, aftrekken, vermenigvuldigen, delen en unaire negatie uitvoeren met complexe getallen.
- Methoden voor het uitvoeren van andere numerieke bewerkingen op complexe getallen. Naast de vier eenvoudige rekenkundige bewerkingen kunt u een complex getal verhogen tot een opgegeven macht, de vierkantswortel van een complex getal zoeken en de absolute waarde van een complex getal ophalen.
- Methoden voor het uitvoeren van trigonometrische bewerkingen op complexe getallen. U kunt bijvoorbeeld de tangens van een hoek berekenen die wordt vertegenwoordigd door een complex getal.
Omdat de eigenschappen Real en Imaginary alleen-lezen zijn, kunt u de waarde van een bestaand Complex object niet wijzigen. Alle methoden die een bewerking uitvoeren op een Complex getal, als de retourwaarde van het type Complexis, retourneren een nieuw Complex getal.
Precisie en complexe getallen
De reële en imaginaire delen van een complex getal worden vertegenwoordigd door twee drijvendekommawaarden met dubbele precisie. Dit betekent dat Complex waarden, zoals drijvendekommawaarden met dubbele precisie, de precisie kunnen verliezen als gevolg van numerieke bewerkingen. Dit betekent dat strikte vergelijkingen voor gelijkheid van twee Complex waarden kunnen mislukken, zelfs als het verschil tussen de twee waarden wordt veroorzaakt door een verlies van precisie. Zie Double voor meer informatie.
Als u bijvoorbeeld exponentiatie uitvoert op de logaritme van een getal, moet het oorspronkelijke getal worden geretourneerd. In sommige gevallen kan het verlies van precisie van drijvendekommawaarden echter kleine verschillen veroorzaken tussen de twee waarden, zoals in het volgende voorbeeld wordt geïllustreerd.
Complex value = new Complex(Double.MinValue / 2, Double.MinValue / 2);
Complex value2 = Complex.Exp(Complex.Log(value));
Console.WriteLine($"{value} \n{value2} \nEqual: {value == value2}");
// The example displays the following output:
// (-8.98846567431158E+307, -8.98846567431158E+307)
// (-8.98846567431161E+307, -8.98846567431161E+307)
// Equal: False
Dim value As New Complex(Double.MinValue / 2, Double.MinValue / 2)
Dim value2 As Complex = Complex.Exp(Complex.Log(value))
Console.WriteLine("{0} {3}{1} {3}Equal: {2}", value, value2,
value = value2,
vbCrLf)
' The example displays the following output:
' (-8.98846567431158E+307, -8.98846567431158E+307)
' (-8.98846567431161E+307, -8.98846567431161E+307)
' Equal: False
Op dezelfde manier produceert het volgende voorbeeld, waarmee de vierkantswortel van een Complex getal wordt berekend, iets andere resultaten op de 32-bits en IA64-versies van .NET.
Complex minusOne = new Complex(-1, 0);
Console.WriteLine(Complex.Sqrt(minusOne));
// The example displays the following output:
// (6.12303176911189E-17, 1) on 32-bit systems.
// (6.12323399573677E-17,1) on IA64 systems.
Dim minusOne As New Complex(-1, 0)
Console.WriteLine(Complex.Sqrt(minusOne))
' The example displays the following output:
' (6.12303176911189E-17, 1) on 32-bit systems.
' (6.12323399573677E-17,1) on IA64 systems.
Oneindigheid en NaN
De werkelijke en imaginaire delen van een complex getal worden vertegenwoordigd door Double waarden. Naast het variëren van Double.MinValue tot Double.MaxValue, kan het reële of imaginaire deel van een complex getal een waarde hebben van Double.PositiveInfinity, Double.NegativeInfinityof Double.NaN. Double.PositiveInfinity, Double.NegativeInfinity en Double.NaN verspreiden zich allemaal in elke rekenkundige of trigonometrische bewerking.
In het volgende voorbeeld produceert deling door Zero een complex getal waarvan de reële en imaginaire delen beide Double.NaNzijn. Als gevolg hiervan produceert het uitvoeren van vermenigvuldiging met deze waarde ook een complex getal waarvan de werkelijke en imaginaire delen zijn Double.NaN. Op dezelfde manier produceert het uitvoeren van een vermenigvuldiging die het bereik van het Double type overloopt een complex getal waarvan het werkelijke deel is Double.NaN en waarvan het imaginaire deel is Double.PositiveInfinity. Vervolgens geeft het uitvoeren van een deling met dit complexe getal een complex getal waarvan het werkelijke deel is Double.NaN en waarvan het imaginaire deel is Double.PositiveInfinity.
using System;
using System.Numerics;
public class NaNEx
{
public static void Run()
{
Complex c1 = new Complex(Double.MaxValue / 2, Double.MaxValue / 2);
Complex c2 = c1 / Complex.Zero;
Console.WriteLine(c2.ToString());
c2 = c2 * new Complex(1.5, 1.5);
Console.WriteLine(c2.ToString());
Console.WriteLine();
Complex c3 = c1 * new Complex(2.5, 3.5);
Console.WriteLine(c3.ToString());
c3 = c3 + new Complex(Double.MinValue / 2, Double.MaxValue / 2);
Console.WriteLine(c3);
}
}
// The example displays the following output:
// (NaN, NaN)
// (NaN, NaN)
// (NaN, Infinity)
// (NaN, Infinity)
Imports System.Numerics
Module Example4
Public Sub Run()
Dim c1 As Complex = New Complex(Double.MaxValue / 2, Double.MaxValue / 2)
Dim c2 As Complex = c1 / Complex.Zero
Console.WriteLine(c2.ToString())
c2 = c2 * New Complex(1.5, 1.5)
Console.WriteLine(c2.ToString())
Console.WriteLine()
Dim c3 As Complex = c1 * New Complex(2.5, 3.5)
Console.WriteLine(c3.ToString())
c3 = c3 + New Complex(Double.MinValue / 2, Double.MaxValue / 2)
Console.WriteLine(c3)
End Sub
End Module
' The example displays the following output:
' (NaN, NaN)
' (NaN, NaN)
'
' (NaN, Infinity)
' (NaN, Infinity)
Wiskundige bewerkingen met complexe getallen die ongeldig zijn of die het bereik van het Double gegevenstype overlopen, genereren geen uitzondering. In plaats daarvan retourneren ze een Double.PositiveInfinity, Double.NegativeInfinityof Double.NaN onder de volgende voorwaarden:
- De verdeling van een positief getal door nul geeft als resultaat Double.PositiveInfinity.
- Elke bewerking die de bovengrens van het Double gegevenstype overloopt, retourneert Double.PositiveInfinity.
- De verdeling van een negatief getal door nul geeft als resultaat Double.NegativeInfinity.
- Elke bewerking die de ondergrens van het Double gegevenstype overloopt, retourneert Double.NegativeInfinity.
- De verdeling van een nul door nul retourneert Double.NaN.
- Elke bewerking die wordt uitgevoerd op operanden waarvan de waarden Double.PositiveInfinityzijn, Double.NegativeInfinityof Double.NaN retourneert Double.PositiveInfinity, Double.NegativeInfinityof Double.NaN, afhankelijk van de specifieke bewerking.
Houd er rekening mee dat dit van toepassing is op tussenliggende berekeningen die door een methode worden uitgevoerd. De vermenigvuldiging van new Complex(9e308, 9e308) and new Complex(2.5, 3.5) maakt bijvoorbeeld gebruik van de formule (ac - bd) + (ad + bc)i. De berekening van het echte onderdeel dat het resultaat is van de vermenigvuldiging, evalueert de expressie 9e308 2,5 - 9e308 3,5. Elke tussenliggende vermenigvuldiging in deze expressie retourneert Double.PositiveInfinity, en de poging om af te trekken Double.PositiveInfinity van Double.PositiveInfinity retourneert Double.NaN.
Een complex getal opmaken
De tekenreeksweergave van een complex getal heeft standaard de vorm <, waarbij ; en imaginair de tekenreeksweergaven zijn van de waarden die de > reële en imaginaire componenten van het complexe getal vormen. Sommige overbelastingen van de ToString methode maken het mogelijk om de tekenreeksweergaven van deze Double waarden aan te passen aan de opmaakconventies van een bepaalde cultuur of om te worden weergegeven in een bepaalde indeling die is gedefinieerd door een standaard- of aangepaste tekenreeks voor numerieke notatie. (Zie voor meer informatie Standaardtekenreeksen voor numerieke notatie en tekenreeksen met aangepaste numerieke notatie.)
Een van de meest voorkomende manieren om de tekenreeksweergave van een complex getal uit te drukken, heeft de vorm a + bi, waarbij a het reële onderdeel van het complexe getal is en b het imaginaire onderdeel van het complexe getal is. In elektrotechniek wordt een complex getal meestal uitgedrukt als a + bj. U kunt de tekenreeksweergave van een complex getal in een van deze twee formulieren retourneren. Hiervoor definieert u een aangepaste indelingsprovider door de ICustomFormatter en IFormatProvider interfaces te implementeren en vervolgens de String.Format(IFormatProvider, String, Object[]) methode aan te roepen.
In het volgende voorbeeld wordt een ComplexFormatter klasse gedefinieerd die een complex getal vertegenwoordigt als een tekenreeks in de vorm van a + bi of a + bj.
using System;
using System.Numerics;
public class ComplexFormatter : IFormatProvider, ICustomFormatter
{
public object GetFormat(Type formatType)
{
if (formatType == typeof(ICustomFormatter))
return this;
else
return null;
}
public string Format(string format, object arg,
IFormatProvider provider)
{
if (arg is Complex c1)
{
// Check if the format string has a precision specifier.
int precision;
string fmtString = string.Empty;
if (format.Length > 1)
{
try
{
precision = int.Parse(format.Substring(1));
}
catch (FormatException)
{
precision = 0;
}
fmtString = "N" + precision.ToString();
}
if (format.Substring(0, 1).Equals("I", StringComparison.OrdinalIgnoreCase))
{
// Determine the sign to display.
char sign = c1.Imaginary < 0 ? '-' : '+';
// Display the determined sign and the absolute value of the imaginary part.
return c1.Real.ToString(fmtString) + " " + sign + " " + Math.Abs(c1.Imaginary).ToString(fmtString) + "i";
}
else if (format.Substring(0, 1).Equals("J", StringComparison.OrdinalIgnoreCase))
{
// Determine the sign to display.
char sign = c1.Imaginary < 0 ? '-' : '+';
// Display the determined sign and the absolute value of the imaginary part.
return c1.Real.ToString(fmtString) + " " + sign + " " + Math.Abs(c1.Imaginary).ToString(fmtString) + "j";
}
else
return c1.ToString(format, provider);
}
else
{
if (arg is IFormattable formattable)
return formattable.ToString(format, provider);
else if (arg != null)
return arg.ToString();
else
return string.Empty;
}
}
}
Imports System.Numerics
Public Class ComplexFormatter
Implements IFormatProvider, ICustomFormatter
Public Function GetFormat(formatType As Type) As Object _
Implements IFormatProvider.GetFormat
If formatType Is GetType(ICustomFormatter) Then
Return Me
Else
Return Nothing
End If
End Function
Public Function Format(fmt As String, arg As Object,
provider As IFormatProvider) As String _
Implements ICustomFormatter.Format
If TypeOf arg Is Complex Then
Dim c1 As Complex = DirectCast(arg, Complex)
' Check if the format string has a precision specifier.
Dim precision As Integer
Dim fmtString As String = String.Empty
If fmt.Length > 1 Then
Try
precision = Integer.Parse(fmt.Substring(1))
Catch e As FormatException
precision = 0
End Try
fmtString = "N" + precision.ToString()
End If
' Determine the sign to display.
Dim sign As Char = If(c1.Imaginary < 0.0, "-"c, "+"c)
' Display the determined sign and the absolute value of the imaginary part.
If fmt.Substring(0, 1).Equals("I", StringComparison.OrdinalIgnoreCase) Then
Return c1.Real.ToString(fmtString) + " " + sign + " " + Math.Abs(c1.Imaginary).ToString(fmtString) + "i"
ElseIf fmt.Substring(0, 1).Equals("J", StringComparison.OrdinalIgnoreCase) Then
Return c1.Real.ToString(fmtString) + " " + sign + " " + Math.Abs(c1.Imaginary).ToString(fmtString) + "j"
Else
Return c1.ToString(fmt, provider)
End If
Else
If TypeOf arg Is IFormattable Then
Return DirectCast(arg, IFormattable).ToString(fmt, provider)
ElseIf arg IsNot Nothing Then
Return arg.ToString()
Else
Return String.Empty
End If
End If
End Function
End Class
In het volgende voorbeeld wordt vervolgens deze aangepaste notatie gebruikt om de tekenreeksweergave van een complex getal weer te geven.
public class CustomFormatEx
{
public static void Run()
{
Complex c1 = new(12.1, 15.4);
Console.WriteLine($"Formatting with ToString: {c1}");
Console.WriteLine($"Formatting with ToString(format): {c1:N2}");
Console.WriteLine($"Custom formatting with I0:\t" +
$" {string.Format(new ComplexFormatter(), "{0:I0}", c1)}");
Console.WriteLine($"Custom formatting with J3:\t" +
$" {string.Format(new ComplexFormatter(), "{0:J3}", c1)}");
}
}
// The example displays the following output:
// Formatting with ToString(): <12.1; 15.4>
// Formatting with ToString(format): <12.10; 15.40>
// Custom formatting with I0: 12 + 15i
// Custom formatting with J3: 12.100 + 15.400j
Module Example2
Public Sub Run()
Dim c1 As New Complex(12.1, 15.4)
Console.WriteLine($"Formatting with ToString(): {c1}")
Console.WriteLine($"Formatting with ToString(format): {c1:N2}")
Console.WriteLine($"Custom formatting with I0: " +
$"{String.Format(New ComplexFormatter(), "{0:I0}", c1)}")
Console.WriteLine($"Custom formatting with J3: " +
$"{String.Format(New ComplexFormatter(), "{0:J3}", c1)}")
End Sub
End Module
' The example displays the following output:
' Formatting with ToString(): <12.1; 15.4>
' Formatting with ToString(format): <12.10; 15.40>
' Custom formatting with I0: 12 + 15i
' Custom formatting with J3: 12.100 + 15.400j
Constructors
| Name | Description |
|---|---|
| Complex(Double, Double) |
Initialiseert een nieuw exemplaar van de Complex structuur met behulp van de opgegeven werkelijke en imaginaire waarden. |
Velden
| Name | Description |
|---|---|
| ImaginaryOne |
Retourneert een nieuw Complex exemplaar met een reëel getal dat gelijk is aan nul en een imaginair getal dat gelijk is aan één. |
| Infinity |
Staat voor oneindigheid als een complex getal. |
| NaN |
Vertegenwoordigt een complex exemplaar dat geen getal (NaN) is. |
| One |
Retourneert een nieuw Complex exemplaar met een reëel getal dat gelijk is aan één en een imaginair getal dat gelijk is aan nul. |
| Zero |
Retourneert een nieuw Complex exemplaar met een reëel getal dat gelijk is aan nul en een imaginair getal dat gelijk is aan nul. |
Eigenschappen
| Name | Description |
|---|---|
| Imaginary |
Hiermee haalt u het imaginaire onderdeel van het huidige Complex object op. |
| Magnitude |
Hiermee haalt u de grootte (of absolute waarde) van een complex getal op. |
| Phase |
Hiermee haalt u de fase van een complex getal op. |
| Real |
Hiermee haalt u het echte onderdeel van het huidige Complex object op. |
Methoden
| Name | Description |
|---|---|
| Abs(Complex) |
Hiermee haalt u de absolute waarde (of grootte) van een complex getal op. |
| Acos(Complex) |
Retourneert de hoek die de boogcosinus van het opgegeven complexe getal is. |
| Add(Complex, Complex) |
Hiermee worden twee complexe getallen toegevoegd en wordt het resultaat geretourneerd. |
| Add(Complex, Double) |
Voegt een complex getal toe aan een reëel getal met dubbele precisie en retourneert het resultaat. |
| Add(Double, Complex) |
Voegt een reëel getal met dubbele precisie toe aan een complex getal en retourneert het resultaat. |
| Asin(Complex) |
Retourneert de hoek die de boogsinus van het opgegeven complexe getal is. |
| Atan(Complex) |
Retourneert de hoek die de boogtangens van het opgegeven complexe getal is. |
| Conjugate(Complex) |
Berekent de samenvoeging van een complex getal en retourneert het resultaat. |
| Cos(Complex) |
Retourneert de cosinus van het opgegeven complexe getal. |
| Cosh(Complex) |
Retourneert de cosinus hyperbolicus van het opgegeven complexe getal. |
| CreateChecked<TOther>(TOther) |
Hiermee maakt u een exemplaar van het huidige type op basis van een waarde en genereert u een overloopuitzondering voor waarden die buiten het vertegenwoordigbare bereik van het huidige type vallen. |
| CreateSaturating<TOther>(TOther) |
Hiermee maakt u een exemplaar van het huidige type op basis van een waarde, waarbij alle waarden die buiten het vertegenwoordigbare bereik van het huidige type vallen, worden verzadiging weergegeven. |
| CreateTruncating<TOther>(TOther) |
Hiermee maakt u een exemplaar van het huidige type op basis van een waarde, waarbij alle waarden worden afgekapt die buiten het vertegenwoordigbare bereik van het huidige type vallen. |
| Divide(Complex, Complex) |
Verdeelt één complex getal door een andere en retourneert het resultaat. |
| Divide(Complex, Double) |
Verdeelt één complex getal door een reëel getal met dubbele precisie en retourneert het resultaat. |
| Divide(Double, Complex) |
Hiermee wordt één reëel getal met dubbele precisie gedeeld door een complex getal en wordt het resultaat geretourneerd. |
| Equals(Complex) |
Retourneert een waarde die aangeeft of het huidige exemplaar en een opgegeven complex getal dezelfde waarde hebben. |
| Equals(Object) |
Retourneert een waarde die aangeeft of het huidige exemplaar en een opgegeven object dezelfde waarde hebben. |
| Exp(Complex) |
|
| FromPolarCoordinates(Double, Double) |
Hiermee maakt u een complex getal op basis van de polaire coördinaten van een punt. |
| GetHashCode() |
Retourneert de hashcode voor het huidige Complex object. |
| IsComplexNumber(Complex) |
Bepaalt of een waarde een complexe waarde vertegenwoordigt. |
| IsEvenInteger(Complex) |
Bepaalt of een waarde een even integraal getal vertegenwoordigt. |
| IsFinite(Complex) |
Bepaalt of het opgegeven complexe getal eindig is. |
| IsImaginaryNumber(Complex) |
Bepaalt of een waarde een imaginair getal vertegenwoordigt. |
| IsInfinity(Complex) |
Retourneert een waarde die aangeeft of het opgegeven complexe getal oneindig is. |
| IsInteger(Complex) |
Bepaalt of een waarde een integrale waarde vertegenwoordigt. |
| IsNaN(Complex) |
Retourneert een waarde die aangeeft of het opgegeven complexe exemplaar geen getal (NaN) is. |
| IsNegative(Complex) |
Bepaalt of een waarde negatief is. |
| IsNegativeInfinity(Complex) |
Bepaalt of een waarde een negatief oneindigheid is. |
| IsNormal(Complex) |
Bepaalt of een waarde normaal is. |
| IsOddInteger(Complex) |
Bepaalt of een waarde een oneven integraal getal vertegenwoordigt. |
| IsPositive(Complex) |
Bepaalt of een waarde positief is. |
| IsPositiveInfinity(Complex) |
Bepaalt of een waarde positief oneindig is. |
| IsRealNumber(Complex) |
Bepaalt of een waarde een reëel getal vertegenwoordigt. |
| IsSubnormal(Complex) |
Bepaalt of een waarde subnormaal is. |
| Log(Complex, Double) |
Retourneert de logaritme van een opgegeven complex getal in een opgegeven basis. |
| Log(Complex) |
Retourneert de natuurlijke logaritme (grondtal |
| Log10(Complex) |
Retourneert de logaritme met grondtal 10 van een opgegeven complex getal. |
| MaxMagnitude(Complex, Complex) |
Vergelijkt twee waarden met berekeningen die groter zijn. |
| MinMagnitude(Complex, Complex) |
Vergelijkt twee waarden met berekeningen die kleiner zijn. |
| Multiply(Complex, Complex) |
Retourneert het product van twee complexe getallen. |
| Multiply(Complex, Double) |
Retourneert het product van een complex getal en een reëel getal met dubbele precisie. |
| Multiply(Double, Complex) |
Retourneert het product van een reëel getal met dubbele precisie en een complex getal. |
| Negate(Complex) |
Retourneert de additieve inverse van een opgegeven complex getal. |
| Parse(ReadOnlySpan<Byte>, IFormatProvider) |
Vertegenwoordigt een complex getal. |
| Parse(ReadOnlySpan<Byte>, NumberStyles, IFormatProvider) |
Vertegenwoordigt een complex getal. |
| Parse(ReadOnlySpan<Char>, IFormatProvider) |
Parseert een reeks tekens in een waarde. |
| Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider) |
Parseert een reeks tekens in een waarde. |
| Parse(String, IFormatProvider) |
Parseert een tekenreeks in een waarde. |
| Parse(String, NumberStyles, IFormatProvider) |
Parseert een tekenreeks in een waarde. |
| Pow(Complex, Complex) |
Retourneert een opgegeven complex getal dat is verheven tot een macht die is opgegeven door een complex getal. |
| Pow(Complex, Double) |
Retourneert een opgegeven complex getal dat is verheven tot een macht die is opgegeven door een drijvendekommagetal met dubbele precisie. |
| Reciprocal(Complex) |
Berekent de vermenigvuldigbare inverse van een complex getal. |
| Sin(Complex) |
Retourneert de sinus van het opgegeven complexe getal. |
| Sinh(Complex) |
Berekent de sinus hyperbolicus van het opgegeven complexe getal. |
| Sqrt(Complex) |
Retourneert de vierkantswortel van een opgegeven complex getal. |
| Subtract(Complex, Complex) |
Trekt één complex getal af van een ander en retourneert het resultaat. |
| Subtract(Complex, Double) |
Trekt één reëel getal met dubbele precisie af van een complex getal en retourneert het resultaat. |
| Subtract(Double, Complex) |
Trekt één complex getal af van een reëel getal met dubbele precisie en retourneert het resultaat. |
| Tan(Complex) |
Retourneert de tangens van het opgegeven complexe getal. |
| Tanh(Complex) |
Retourneert de tangens hyperbolicus van het opgegeven complexe getal. |
| ToString() |
Converteert de waarde van het huidige complexe getal naar de equivalente tekenreeksweergave in cartesische vorm. |
| ToString(IFormatProvider) |
Converteert de waarde van het huidige complexe getal naar de equivalente tekenreeksweergave in cartesische vorm met behulp van de opgegeven cultuurspecifieke opmaakinformatie. |
| ToString(String, IFormatProvider) |
Converteert de waarde van het huidige complexe getal naar de equivalente tekenreeksweergave in cartesische vorm met behulp van de opgegeven notatie en cultuurspecifieke notatiegegevens voor de werkelijke en imaginaire delen. |
| ToString(String) |
Converteert de waarde van het huidige complexe getal naar de equivalente tekenreeksweergave in cartesische vorm met behulp van de opgegeven notatie voor de werkelijke en imaginaire delen. |
| TryFormat(Span<Byte>, Int32, ReadOnlySpan<Char>, IFormatProvider) |
Probeert de waarde van het huidige exemplaar op te maken als UTF-8 in het opgegeven bereik van bytes. |
| TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider) |
Probeert de waarde van het huidige exemplaar op te maken in de opgegeven reeks tekens. |
| TryParse(ReadOnlySpan<Byte>, IFormatProvider, Complex) |
Vertegenwoordigt een complex getal. |
| TryParse(ReadOnlySpan<Byte>, NumberStyles, IFormatProvider, Complex) |
Vertegenwoordigt een complex getal. |
| TryParse(ReadOnlySpan<Char>, IFormatProvider, Complex) |
Probeert een reeks tekens te parseren in een waarde. |
| TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Complex) |
Probeert een reeks tekens te parseren in een waarde. |
| TryParse(String, IFormatProvider, Complex) |
Probeert een tekenreeks te parseren in een waarde. |
| TryParse(String, NumberStyles, IFormatProvider, Complex) |
Probeert een tekenreeks te parseren in een waarde. |
Operators
| Name | Description |
|---|---|
| Addition(Complex, Complex) |
Hiermee worden twee complexe getallen toegevoegd. |
| Addition(Complex, Double) |
Voegt een complex getal toe aan een reëel getal met dubbele precisie. |
| Addition(Double, Complex) |
Hiermee voegt u een reëel getal met dubbele precisie toe aan een complex getal. |
| Decrement(Complex) |
Een waarde verlagen. |
| Division(Complex, Complex) |
Hiermee wordt een opgegeven complex getal gedeeld door een ander opgegeven complex getal. |
| Division(Complex, Double) |
Hiermee wordt een opgegeven complex getal gedeeld door een opgegeven reëel getal met dubbele precisie. |
| Division(Double, Complex) |
Hiermee wordt een opgegeven reëel getal met dubbele precisie gedeeld door een opgegeven complex getal. |
| Equality(Complex, Complex) |
Retourneert een waarde die aangeeft of twee complexe getallen gelijk zijn. |
| Explicit(BigInteger to Complex) |
Definieert een expliciete conversie van een BigInteger waarde naar een complex getal. |
| Explicit(Decimal to Complex) |
Definieert een expliciete conversie van een Decimal waarde naar een complex getal. |
| Explicit(Int128 to Complex) |
Converteert expliciet een Int128 waarde naar een complex getal met dubbele precisie. |
| Explicit(UInt128 to Complex) |
Converteert expliciet een UInt128 waarde naar een complex getal met dubbele precisie. |
| Implicit(BFloat16 to Complex) |
Vertegenwoordigt een complex getal. |
| Implicit(Byte to Complex) |
Hiermee definieert u een impliciete conversie van een niet-ondertekende byte naar een complex getal. |
| Implicit(Char to Complex) |
Converteert impliciet een Char waarde naar een complex getal met dubbele precisie. |
| Implicit(Double to Complex) |
Definieert een impliciete conversie van een drijvendekommagetal met dubbele precisie naar een complex getal. |
| Implicit(Half to Complex) |
Converteert impliciet een Half waarde naar een complex getal met dubbele precisie. |
| Implicit(Int16 to Complex) |
Definieert een impliciete conversie van een 16-bits geheel getal met teken naar een complex getal. |
| Implicit(Int32 to Complex) |
Hiermee definieert u een impliciete conversie van een 32-bits geheel getal met teken naar een complex getal. |
| Implicit(Int64 to Complex) |
Hiermee definieert u een impliciete conversie van een 64-bits geheel getal met teken naar een complex getal. |
| Implicit(IntPtr to Complex) |
Converteert impliciet een IntPtr waarde naar een complex getal met dubbele precisie. |
| Implicit(SByte to Complex) |
Hiermee definieert u een impliciete conversie van een ondertekende byte naar een complex getal. Deze API is niet CLS-conform. |
| Implicit(Single to Complex) |
Definieert een impliciete conversie van een drijvendekommagetal met één precisie naar een complex getal. |
| Implicit(UInt16 to Complex) |
Definieert een impliciete conversie van een 16-bits geheel getal zonder teken naar een complex getal. Deze API is niet CLS-conform. |
| Implicit(UInt32 to Complex) |
Hiermee definieert u een impliciete conversie van een 32-bits geheel getal zonder teken naar een complex getal. Deze API is niet CLS-conform. |
| Implicit(UInt64 to Complex) |
Definieert een impliciete conversie van een 64-bits geheel getal zonder teken naar een complex getal. Deze API is niet CLS-conform. |
| Implicit(UIntPtr to Complex) |
Converteert impliciet een UIntPtr waarde naar een complex getal met dubbele precisie. |
| Increment(Complex) |
Hiermee wordt een waarde verhoogd. |
| Inequality(Complex, Complex) |
Retourneert een waarde die aangeeft of twee complexe getallen niet gelijk zijn. |
| Multiply(Complex, Complex) |
Vermenigvuldigt twee opgegeven complexe getallen. |
| Multiply(Complex, Double) |
Vermenigvuldigt het opgegeven complexe getal met een opgegeven reële getal met dubbele precisie. |
| Multiply(Double, Complex) |
Vermenigvuldigt een opgegeven getal met dubbele precisie met een opgegeven complex getal. |
| Subtraction(Complex, Complex) |
Trekt een complex getal af van een ander complex getal. |
| Subtraction(Complex, Double) |
Trekt een reëel getal met dubbele precisie af van een complex getal. |
| Subtraction(Double, Complex) |
Trekt een complex getal af van een reëel getal met dubbele precisie. |
| UnaryNegation(Complex) |
Retourneert de additieve inverse van een opgegeven complex getal. |
| UnaryPlus(Complex) |
Berekent het unaire plusteken van een waarde. |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| IAdditiveIdentity<Complex,Complex>.AdditiveIdentity |
Hiermee haalt u de additieve identiteit van het huidige type op. |
| IMultiplicativeIdentity<Complex,Complex>.MultiplicativeIdentity |
Hiermee haalt u de vermenigvuldigende identiteit van het huidige type op. |
| INumberBase<Complex>.Abs(Complex) |
Berekent de absolute waarde van een waarde. |
| INumberBase<Complex>.IsCanonical(Complex) |
Bepaalt of een waarde zich in de canonieke weergave bevindt. |
| INumberBase<Complex>.IsZero(Complex) |
Bepaalt of een waarde nul is. |
| INumberBase<Complex>.MaxMagnitudeNumber(Complex, Complex) |
Vergelijkt twee waarden met berekeningen die de grotere grootte hebben en de andere waarde retourneren als een invoer is |
| INumberBase<Complex>.MinMagnitudeNumber(Complex, Complex) |
Vergelijkt twee waarden met berekeningen die de lagere grootte hebben en de andere waarde retourneren als een invoer is |
| INumberBase<Complex>.MultiplyAddEstimate(Complex, Complex, Complex) |
Berekent een schatting van ( |
| INumberBase<Complex>.One |
Hiermee haalt u de waarde |
| INumberBase<Complex>.Radix |
Bepaalt de radix of basis voor een type. |
| INumberBase<Complex>.TryConvertFromChecked<TOther>(TOther, Complex) |
Vertegenwoordigt een complex getal. |
| INumberBase<Complex>.TryConvertFromSaturating<TOther>(TOther, Complex) |
Vertegenwoordigt een complex getal. |
| INumberBase<Complex>.TryConvertFromTruncating<TOther>(TOther, Complex) |
Vertegenwoordigt een complex getal. |
| INumberBase<Complex>.TryConvertToChecked<TOther>(Complex, TOther) |
Probeert een exemplaar van het huidige type te converteren naar een ander type, waardoor een overloop-uitzondering wordt gegenereerd voor waarden die buiten het vertegenwoordigbare bereik van het huidige type vallen. |
| INumberBase<Complex>.TryConvertToSaturating<TOther>(Complex, TOther) |
Hiermee wordt geprobeerd een exemplaar van het huidige type te converteren naar een ander type, waarbij alle waarden die buiten het vertegenwoordigbare bereik van het huidige type vallen, worden verzadigingswaarden weergegeven. |
| INumberBase<Complex>.TryConvertToTruncating<TOther>(Complex, TOther) |
Hiermee wordt geprobeerd een exemplaar van het huidige type te converteren naar een ander type, waarbij alle waarden worden afgekapt die buiten het vertegenwoordigbare bereik van het huidige type vallen. |
| INumberBase<Complex>.Zero |
Hiermee haalt u de waarde |
| ISignedNumber<Complex>.NegativeOne |
Hiermee haalt u de waarde |