Я пытаюсь передать double *, который содержит массив double, в конструктор моего класса и назначить элемент value для элемента.
Main:
int main()
{
double* data = new double[4];
data[0] = 1.1; data[1] = 2.2; data[2] = 3.3; data[3] = 4.4;
Matrix a(2,2,data);
return 0;
}
А это мой конструктор:
Matrix::Matrix(int M, int N, double* input_data)
{
this->M = M;
this->N = N;
cout << "Matrix Constructor: M: " << M << "\tN: " << N << endl;
for (int i = 0; i < M; i++)
{
for (int j = 0; j < N; j++)
{
data[i*N+j] = input_data[i*N+j]; //***This is the problem***
}
}
}
Любая попытка индексировать в конструкторе значение input_data[0]
вызывает сбой. Доступ к data[]
возможен нормально, и я могу индексировать данные input_data[0]
в моей основной функции.
Я предполагаю, что это не должно быть сделано таким образом, и был бы признателен за любое движение в правильном направлении.