如果我有代码:
Dim x as Decimal = 100.0m
是否隐式地从双精度转换为十进制。我将如何在vb.net中明确地执行此操作?
答案 0 :(得分:6)
我想你想要:
Dim x as Decimal = 100.0d
C#中的十进制文字是m
,但在vb.net中是d
。这不会产生任何铸件。要将double转换为小数(r
是vb.net中的双重文字),您可以说:
Dim x as Decimal = CType(100r, Decimal)
Dim x as Decimal = CType(100.0, Decimal)
答案 1 :(得分:3)
十进制的文字后缀是C#中的“m | M”。在VB.NET中,十进制的文字后缀是“d | D”。如果我理解你的问题,该陈述应为:
Dim x为Decimal = 100.0d
VB.NET编译器会在编译时将数字文字解释为十进制,因此不需要强制转换。