Ich hatte bis vor kurzem den Eindruck, dass die CDbl(x)
Operation in VB.NET war im Wesentlichen ein Cast (d.h. das VB-Äquivalent von (double)x
in C#); eine neue Entdeckung hat jedoch gezeigt, dass dies nicht der Fall ist.
Wenn ich diese Zeichenfolge habe:
Dim s As String = "12345.12345-"
Und ich tue dies:
Dim d As Double = CDbl(s)
d
wird auf den Wert -12345.12345
! Verstehen Sie mich nicht falsch, das ist in meinem speziellen Szenario ziemlich praktisch, aber ich muss zugeben, dass ich verwirrt bin, weil warum das funktioniert. Vor allem bin ich verwirrt, weil:
Double.Parse
funktioniert nicht mit der obigen Eingabe.Double.TryParse
funktioniert nicht.Convert.ToDouble
funktioniert nicht.
Wie ist CDbl
so clever?