for (int i = 0; i < 5; i++)
{
string str = "";
str = "";
}
string str = "";
str = "";
}这样 两句 string str = "";会报错,但第二个str已经离开了第一个的作用域了。 for (int i = 0; i < 5; i++)
{
string str = "";
str = "";
}
string str2 = "";
str = "";
}
下面的str找不到定义 谁能解释下这种情况?
{
string str = "";
str = "";
}
string str = "";
str = "";
}这样 两句 string str = "";会报错,但第二个str已经离开了第一个的作用域了。 for (int i = 0; i < 5; i++)
{
string str = "";
str = "";
}
string str2 = "";
str = "";
}
下面的str找不到定义 谁能解释下这种情况?
规则二:一个变量如果在某个作用于内定义,作用域外则不能访问
规则三:允许同一个变量在不同的作用域内定义。对于你的情况,这样写就可以通过:
for (int i = 0; i < 5; i++)
{
string str = "";
str = "";
}
{
string str = "";
str = "";
}
使用switch case语句
在case中定义的变量一样出楼主说的问题
等明白人来说个明白答案
+1赞一个for (int i = 0; i < 5; i++)
{
string str = "";//你的str字段在for循环里定义了,
str = "";
}
string str2 = "";
str = "";//但是循环外,你未定义。
}
下面的str找不到定义