我有以下构造函数:
RegMatrix(int numRow, int numCol, std::vector<double> fill);
并在我的一个功能中:
RegMatrix RegMatrix::operator+(RegMatrix &matrix)
我创建:
std::vector<ThreeDigits> fill;
然后我回来了:
return RegMatrix(1,2,fill);
它说我返回(int,int,std::vector<ThreeDigits>&)
...
为什么这样,我该如何解决?
答案 0 :(得分:4)
std::vector<double>
与std::vector<ThreeDigits>
的类型不同。您可以通过创建RegMatrix::RegMatrix(int, int, const std::vector<ThreeDigits>&)
或修改fill
:std::vector<double> fill;
的声明来解决此问题。