.net 值类型变量赋值需要注意

两个值类型直接赋值,会进行字段的复制,完成之后,彼此直接没有任何关系

比如:从Dictionary<string, struct>取出struct后,给struct赋值,以为struct的值会被改变,这时,

从另一个方法再次取出,发现struct还是原来的值,会很纳闷

这个误会往往会对有c++ 或者delphi开发经验的人有很大影响,忘记了c#里,值类型的“不可改变”性,

表面看上去值发生了变化,其实是发生变化的数据没有改回原来的变量,而是一个新的变量

posted @ 2010-02-08 22:40  静候良机  阅读(511)  评论(1编辑  收藏  举报