- 论坛徽章:
- 0
|
使用输入流迭代器用两种方法定义并初始化了一个vector对象,都是c++primer上面的例子,不知道为什么第一种方法运行正确,第二种方法调试却不能通过,
vector<int> vec;
istream_iterator<int> in_iter(cin);
istream_iterator<int> eof;
while (in_iter != eof)
vec.push_back(*in_iter++);
/********下面是第二种方法,不能通过*************/
istream_iterator<int> in_iter(cin);
istream_iterator<int> eof(cin);
vector<int> vec(in_iter, eof); //使用一对流迭代器初始化
把错误信息也发下,error C2664: '__thiscall std::vector<int,class std::allocator<int> >::std::vector<int,class std::allocator<int> >(unsigned int,const int &,
const class std::allocator<int> &)' : cannot convert parameter 1 from 'class std::istream_iterator<int,char,struct std::char_traits<char> >' to 'unsigned int'
请大虾们帮下 谢谢了
[ 本帖最后由 face_to_sea 于 2008-6-7 10:20 编辑 ] |
|