13 Stimmen

Was macht CDbl?

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?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X