首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

for 里面作用域的有关问题

2012-02-08 
for 里面作用域的问题for(inti1i9++i){coll.push_back(i)}for(inti1i9++i){coll1.push_back(i)

for 里面作用域的问题
for   (int   i   =   1;   i   <=9   ;   ++i)
{
coll.push_back(i);
}
for   (   int   i   =   1;   i   <=9   ;   ++i)
{
coll1.push_back(i);
}
///第二个i   里面重定义?不是很懂     ,第一个i作用域到哪里?

[解决办法]
你用的VC6吧,扔了吧,换VC2005epxress或者devcpp。
[解决办法]
根据标准的话,for中定义变量的生命期到该循环体结束之后就完结,所以这种写法是正确的,但是部分老旧的编译器会报错,这种情况下,换一种编译器吧
[解决办法]
换编译器。
VC6.0标准老了。
[解决办法]
这个vc6编不过去的,别和编译器较劲了
[解决办法]
这个是VC6的本身问题,i的作用域确实只在第一个循环内,将int i写到外面就可以了
[解决办法]
这个问题具体的论述可以看看BS的《C++语言的设计和演化》3.11.5

热点排行