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

范围for输出多维数组有关问题

2014-01-17 
范围for输出多维数组问题本帖最后由 charleswu82 于 2014-01-14 11:14:05 编辑c++ primer 6的习题,范围for

范围for输出多维数组问题
本帖最后由 charleswu82 于 2014-01-14 11:14:05 编辑 c++ primer 6的习题,范围for是c++ 11的新特性,题目是下面例子不能使用auto关键字,请教怎么写
第一个范围for,如果不用auto &row数组被自动转换成首元素地址的指针,不用auto应该怎样写


#include<iostream>
using namespace std;
int main()
{
int ia[3][4] = {{0,1,2,3},{4,5,6,7},{8,9,10,11}};
for (const auto &row:ia)
//for (int (*row)[4]:ia)
{
  for(auto col:row)
  //for(int col:row)
    cout<<col<<" "; 
    } 
cout<<endl;
return 0;    
}

[解决办法]
同学该认真看书啊,另外C++ Primer 6还没出吧
改好了
#include<iostream>
using namespace std;
int main()
{
int ia[3][4] = { { 0, 1, 2, 3 }, { 4, 5, 6, 7 }, { 8, 9, 10, 11 } };
//for (const auto &row : ia)
for (const int (&row)[4]: ia)
{
for (int col : row)
std::cout << col << " ";
std::cout << endl;
}
std::cout << endl;
return 0;
}

热点排行