【发布时间】:2014-02-22 21:30:14
【问题描述】:
我正在尝试实现一个与 std::string 行为相似的类,但我在 std::copy 行中遇到错误:
Str& operator+=(const Str& s){
std::copy(s.data.begin(), s.data.end(), std::back_inserter(data));
return *this;
}
'data' 是一个 vec 类型的对象,而 vec 是一个我自己实现的类向量类,它本身似乎运行良好。
它还说:
C:\MinGW\bin..\lib\gcc\mingw32\3.4.2........\include\c++\3.4.2\bits\stl_iterator.h||在`std的实例化中::back_insert_iterator >':|
【问题讨论】:
-
你的
vec<char>有const_reference类型吗? -
我添加了一个'typedef const T& const_reference'并编译,现在让我们看看它是否有效。谢谢大家的回答,希望我能投票给大家。
-
如果答案有帮助,您应该接受其中一个答案。
-
“加速 C++”第 12 章,作者 A. Koenig 和 B. E. Moo。你能引用他们吗?
标签: c++