【发布时间】:2013-06-06 07:42:30
【问题描述】:
我正在尝试使用 ostream_iterator 将成对向量写入文件。ostream_iterator 需要在声明时应用模板参数。 向量定义为-
vector<pair<string,long>> test;
当我将 pair 作为模板传递给 ostream_iterator 时,它会显示错误 -
错误 1 错误 C2679: 二进制 '' 类型的右侧操作数的运算符(或没有可接受的转换) C:\Program文件 (x86)\Microsoft Visual Studio 10.0\VC\include\iterator 531 1 个词分段
在这种情况下,正确的论点可能是什么?
编辑- 代码片段
vector<pair<string,long>> t;
......
//t is filled up with elements
ostream_iterator<pair<string,long>> output_iterator(out, "\n");
std::copy(t.begin(), t.end(), output_iterator);
【问题讨论】:
-
显示你调用
ostream_iterator的实际代码。
标签: c++ templates iterator std-pair