为什么foreach循环中的局部变量与循环外声明的变量冲突?
鉴于此代码:
List things = new List(); foreach (string thing in things) { string foo = thing.ToUpper(); } string foo = String.Empty;
为什么编译器会抱怨foo被声明了两次? 当然,在foreach循环中声明的实例仅在循环范围内有效吗?
虽然在声明它之后只能引用外部foo
,但是在函数的开头分配了本地,这意味着内部foo
会使外部foo
蒙上阴影,即使它尚未声明。
上述就是C#学习教程:为什么foreach循环中的局部变量与循环外声明的变量冲突?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1017102.html