编译器错误 CS0445
更新:2007 年 11 月
错误消息
无法修改取消装箱转换的结果
取消装箱转换的结果是一个临时变量,编译器禁止您修改这样的变量,因为当临时变量消失时,任何修改也随之消失。若要修复此错误,请使用一个值类型来存储中间表达式。然后您可以给值类型赋值。
下面的代码生成 CS0455:
// CS0445.CS
public struct Point
{
public int x;
public static void SetX(object obj, int x)
{
((Point)obj).x = x; // CS0445
}
}
class UnboxingTest{public static void Main(){}}