小编MBe*_*Bes的帖子

STL:如何为<vector>重载operator =?

有一个简单的例子:

#include <vector>

int main() {
 vector<int> veci;
 vector<double> vecd;

 for(int i = 0;i<10;++i){
  veci.push_back(i);
  vecd.push_back(i);
 }
 vecd = veci; // <- THE PROBLEM
}
Run Code Online (Sandbox Code Playgroud)

我需要知道的是如何重载operator =以便我可以像这样进行赋值:

vector<double> = vector<int>;
Run Code Online (Sandbox Code Playgroud)

我刚尝试了很多方法,但总是编译器返回错误...

是否有任何选项可以使此代码无需更改?我可以写一些额外的行,但不能编辑或删除现有的行.TY.


好的我明白了.我会用另一种方式问你..有没有选择让这段代码无需改变它?我可以写一些额外的行,但不能编辑或删除现有的行.TY.

c++ stl vector operators conversion-operator

3
推荐指数
2
解决办法
2949
查看次数

标签 统计

c++ ×1

conversion-operator ×1

operators ×1

stl ×1

vector ×1