读书人

声明的最高境界, 请看代码解决方案

发布时间: 2012-03-21 13:33:15 作者: rapoo

声明的最高境界, 请看代码

C/C++ code
#include <iostream>#include <vector>#include <iterator>#include <algorithm>using namespace std;int main(){    vector<int> v(istream_iterator<int>(cin),             istream_iterator<int>());   // 这里编译不通过, 为何?    copy(v.begin(), v.end(), ostream_iterator<int>(cout, "\n"));    return 0;}


提示: 编译器将 v 理解为一个函数. 问, 为什么?

[解决办法]
编译器解析问题

加2个括号即可。
C/C++ code
vector<int> v( (istream_iterator<int>(cin)) , (istream_iterator<int>()) ); 

读书人网 >C++

热点推荐