读书人

很灵异的编译异常对拆箱比较熟悉的请

发布时间: 2012-03-20 14:01:10 作者: rapoo

很灵异的编译错误,对拆箱比较熟悉的请来拿分吧
在代码中有一个结构体
struct stru
{
public int X;
public int Y;
}

为啥这样写
object o = new stru();
stru s = (stru)o;
s.X = 1;
s.Y = 1;
就没有问题,

而这样写
object o = new stru();
((stru)o).X = 1;
((stru)o).Y = 1;
就编译不通过呢?

期待高人的解释

[解决办法]
因为struct 是值类型

读书人网 >C#

热点推荐