【发布时间】:2011-08-05 10:38:10
【问题描述】:
我对在 for 循环(等)的初始化部分中声明的变量范围背后的设计考虑因素感到好奇。这些变量似乎既不在范围内也不在范围外,或者我错过了什么?为什么会这样,什么时候需要这样?即:
for (int i = 0; i < 10; i++)
{
}
i = 12; //CS0103: The name 'i' does not exist in the current context
int i = 13; //CS0136: A local variable named 'i' cannot be declared in this scope
//because it would give a different meaning to 'i', which is already
//used in a 'child' scope to denote something else
【问题讨论】: