日期:2014-05-18  浏览次数:20820 次

C#的参数传递的方式?
不太理解,请各位解释一下。感谢!
默认情况下:
如果传递的是“值类型”就是按指传递;
如果传递的是“引用类型”就按引用传递。
这样理解对吗?

------解决方案--------------------
看看下面的帖子
http://www.cnblogs.com/anytao/archive/2007/05/28/must_net_08.html
http://www.cnblogs.com/anytao/archive/2007/05/28/must_net_09.html
http://www.cnblogs.com/anytao/archive/2007/05/28/must_net_10.html
------解决方案--------------------
首先你应该了解.net中的内存分配。
值类型是在栈中分配,而引用类型的值在堆中分配,栈中只存堆中的地址。
所以值类型,传递的是值,引用类型传递的是栈中的指针。
你可以去看看.netframework技术内幕这本书中关于这个问题的描述。