C# foreach 值类型及引用类型迭代变量改变的方式

mac2022-06-30  108

C#中foreach不能改变迭代变量的值

 

然而此种说法只适用与值类型,更改值类型时会改变在栈上的内存分布

引用类型由于是引用地址的变更,不影响内存分布,所以能够在foreach中更改

至于引用类型中的特殊string类型,猜想是因为string类型的变更不是地址的更改,而是会在堆上面重新开辟一块,所以应该也是会影戏到内存分布

转载于:https://www.cnblogs.com/X-Q-X/p/10402479.html

相关资源:JAVA上百实例源码以及开源项目
最新回复(0)