帮忙看一下我写的这个矩阵类里的矩阵乘法函数哪里有问题呗
class Matrix {
private:
double* a;//用户输入的数组
double* c;//用于进行计算数组
int row, col;
public:
//输入矩阵
double* set(int m, int n) {
row = m;
col = n;
a = new double[m * n];
for (int i = 0;i < row;i++) {
cout<<"第"<<i+1<<"行:\n";
for (int j = 0;j < col;j++) {
cin >> *(a + i * col + j);
}
}
return a;
}
double* Multiply(double* b, int row1, int col1) {
c = new double[row * col1];
if (col == row1) {
for (int i = 0;i < row;i++) {
for (int j = 0;j < col1;j++) {
for (int k = 0;k < col;k++) {
double x = *(c + i * col1 + j);
*(c + i * col1 + j) = x+(*(a + i * col + k))* (*(b + k * col1 + j));
}
}
}
}
else {
printf("数组维度不同");
}
col = col1;
return c;
}
void Show()
{
for (int i = 0;i < row;i++) {
for (int j = 0;j < col;j++) {
cout<< *(c + i * col + j) << "\t";
}
cout << "\n";
}
}
};