这是一个带有对象'矩阵'它包含动态2D数组。我想这样做,所以我可以在另一个矩阵上添加两个矩阵。例如:a = b + c; b和c中相应元素的总和(如b [1] [1] + c [1] [1])将进入[1] [1]
但是我得到了错误:在'之前预期的初始化程序。'令牌。不知道该怎么做
//.h file
Square_Matrix& operator+(const Square_Matrix& Par);
//.cpp file
Square_Matrix& Square_Matrix::operator +(const Square_Matrix& Par){
Square_Matrix result;
Square_Matrix result.Set_Size(Par.Get_Size);
for (int i = 0; i < Par.Get_Size; i++){
for (int j = 0; j < Par.Get_Size; i++){
result.matrix[i][j] = Par.matrix[i][j] + matrix[i][j];
} //assume matrix size will always be the same
}
return *this; //is this correct as well?
}
答案 0 :(得分:1)
替换
Square_Matrix result.Set_Size(Par.Get_Size);
与
result.Set_Size(Par.Get_Size);
因为您已在前一行声明了result
。 (您不能在同一语句中声明变量并在其上调用方法。)
(另外,假设Square_Matrix::Get_Size
是一种方法,你需要用括号调用它,即,Par.Get_Size()
)
答案 1 :(得分:1)
你也在嵌套循环中再次递增。