Я пишу некоторые основные функции матрицы и получаю сообщение об ошибке, что я не могу понять, как диагностировать.переменная или поле (функция) объявлено void
У меня есть функция в моем файле .h:
void matrixMultiplication (int arr1[][100], int arr2[][100], int a1row, int a2col, int targetArr[][100]);
В моем файле .cpp У меня есть:
void matrixMultiplication (matrix1, matrix2, rowOfMatrix1, columnOfMatrix2, finalMatrix);
, который определяется как
void matrixMultiplication (int arr1[][100], int arr2[][100], int a1row, int a2col, int targetArr[][100]) {
for (int a = 0; a < a1row; a++) {
for (int b = 0; b < a2col; b++) {
for (int c = 0; c < a2col; c++) {
targetArr[a][b] += arr1[a][c]*arr2[c][b];
}
}
}
}
Все объявляется здесь:
//designates the sizes of both matrices
int rowOfMatrix1 = 0;
int columnOfMatrix1 = 0;
// size of matrix 1 = rowOfMatrix1 x columnOfMatrix1
int rowOfMatrix2 = 0;
int columnOfMatrix2= 0;
// size of matrix 2 = rowOfMatrix2 x columnOfMatrix2
//arrays that hold the values of the integers in the matrices
int matrix1 [100][100];
int matrix2 [100][100];
int finalMatrix [100][100];
Однако, когда я запускаю программу, я получаю следующее сообщение об ошибке:
In function 'int main()' [Error] variable or field 'matrixMultiplication' declared void
Я вижу, что этот вопрос был задан раньше, но ответ должен был сделать со строками, которые не имеют ничего общего с моей программой , и я не могу понять, как продлить этот ответ на этот случай.
Почему вы указать тип возвращаемого значения, когда вы * вызов * функция? –
Что касается несвязанного примечания, я надеюсь, что вы инициализируете 'finalMatrix' где-то перед вызовом или у вас будет * неопределенное поведение *. –