【发布时间】:2010-05-06 16:52:04
【问题描述】:
g++ 允许从 ifstream 实例构造 istream_iterator:
std::ifstream ifstr("test.txt");
std::istream_iterator<std::string> iter1(ifstr);
...但它不允许使用未命名的临时结构进行相同的构造:
std::istream_iterator<std::string> iter2(std::ifstream("test.txt"));
这给出了:
错误:没有匹配函数调用‘std::istream_iterator, ptrdiff_t>::istream_iterator(std::ifstream)’
有谁知道为什么这不起作用? - 谢谢!
【问题讨论】:
标签: c++ constructor istream-iterator