#include<iostream> #include<iterator> using namespace std; int main() { //int buf[10];//OK! int* buf=new int[10]; for(int& i:buf) cout<<i; return 0; }
这段代码,用gcc 的C++11编译出错,说”begin” was not declared in this scope
很奇怪,用int buf[10]数组的时候编译就没有问题,buf变成指向数组的指针就编译不过了。这是为什么?
解决方案
20
int*buf
的时候不知道buf的大小
的时候不知道buf的大小
20
for(int*& i:buf)