范围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;
}
#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;
}