当我深入mscolib.dll
汇编时,我发现 Int32 是一个结构,但我不知道为什么我们可以像这样将“=”运算符应用于 Int32 Int32 num=5;
。它不会在 Int32 结构中重载“=”运算符。
问问题
71 次
1 回答
1
=
运算符不能重载。请参阅可重载运算符。运算符总是将右侧的=
值赋给左侧的变量。
对于值类型(结构),这意味着将整个值复制到变量中。
对于类似 的类型Int32
,处理器中有内置指令可以进行复制。对于太大以至于没有指令可以一次复制整个值的结构,将有一个循环将结构中的字节复制到变量中。
于 2015-01-24T17:49:04.050 回答