今天我遇到了一個問題,我不完全確定它爲什麼不起作用。在c中鑄造對象類型#
下面的代碼示例會崩潰:
static void Main(string[] args)
{
int i32 = 10;
object obj = i32;
long i64 = (long)obj;
}
這將導致一個InvalidCastException。爲什麼這不起作用? C#沒有足夠的智能來知道對象實際上是int類型的嗎?
我已經想出了一個解決方法,但我很好奇爲什麼上面的代碼示例不起作用。
感謝, 添
我注意到這是許多以前的問題的重複,包括最近http://stackoverflow.com/questions/3911293 – 2010-10-13 05:18:47