我有以下构造函数:

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>&) ...
为什么会这样,我该如何解决?

最佳答案

std::vector<double>std::vector<ThreeDigits>的类型不同。您可以通过创建RegMatrix::RegMatrix(int, int, const std::vector<ThreeDigits>&)或修改fill的声明来解决此问题:std::vector<double> fill;

08-16 09:50