好的,C#/。NET大师,有人可以告诉我为什么这个演员有效:
static void Main(string[] args)
{
int _int = 0;
decimal _decimal = 1;
_int = (int)_decimal;
Console.ReadLine();
}
......但这些都没有?
static void Main(string[] args)
{
int _int = 0;
decimal d = 1;
object _decimal = d;
_int = (int)_decimal;
Console.ReadLine();
}
static void Main(string[] args)
{
int _int = 0;
object _decimal = 1M;
_int = (int)_decimal;
Console.ReadLine();
}
我可以将一个小数转换为int,只要我从中转换的是一个显式声明的十进制类型,但是当小数存储在对象类型中时,我不能将小数转换为int?怎么了?
注意:我知道我可以使用Convert.ToInt32(),但我试图弄清楚这里这个不起作用。