C# List 作为参数传递的值变化演示解说

作者:vkvi 来源:千一网络(原创) 日期:2013-1-31

可以发现:经过 Test 后,list 的元素数量由 0 变为 1 了。

如果是把变量 list 赋给另一个变量 list2,操作 list2 的话 list 也会跟着变。

这是因为这些变量实际上是指向另一个内存块的,对元素数量、元素值的改变都是改变的对应的同一个内存块。

但是调用他们的 ConvertAll 方法,返回的变量,就是指向另一个内存块了,就与前面的不同了。

以上代码就不同了,这是 list = list2,实际上将 list 指向了 list2 对应的内存块,根据前面的结论,此时参数中的 list 跟 list2 是一伙的了,而不是和 TestMethod1 中的 list 的一伙。

以下代码就不同了,但现在实际上创建了两个 new List<int>(),在 TestMethod1() 中没人再用它了。

数组也是一样的道理。

你前面那位网友看了:小型 Web(ASP)服务器介绍-小旋风 AspWebServer 2005

▲▲▲嘿,欢迎转载传播本站原创文章,尽量保留来源噢。▲▲▲

文章评论
标题:必填
内容:
本站永远终止与捏造“罪名”不支付广告费的某度联盟合作。
vkvi
vkvi

作者简介: vkvi,致力于 .NET Web 开发、移动开发的技术推广,在 .NET、SQL Server、Windows Server 等方面有深入研究和丰富经验,10 年间共计撰写文章 4000 余篇。 主持金融、国土、农业、电商等多个行业项目执行, 推行“技术提升生产力、人心决定成功率”的管理理论。 联系他