有什么区别呢?
decimal d = (decimal) myDouble; decimal d = new decimal(myDouble); decimal d = Convert.ToDecimal(myDouble);
解决方法
没有区别.如果你看看来源:
十进制:
public static explicit operator decimal(double value) { return new decimal(value); }
转换:
public static decimal ToDecimal(float value) { return (decimal) value; }
所以最后他们都调用新的十进制(双).