Почему ящик int
, который был помещен в бокс, не может быть напрямую добавлен к double
?
object o = 12;
double d = (double)o;
Это вызывает недопустимое исключение лита. Вместо этого кажется, что сначала он должен быть отброшен как int
, а затем на double
.
object o = 12;
double d = (double)(int)o;
Я уверен, что простой ответ "потому что это работает бокс", но я надеюсь, что кто-то может пролить немного света здесь.