ここで私たちは再びインターネットの良い人々です。
これは私が使用しているコードです:
//This is what is in the header file
int *myArr[]; // A two-dimensional array representing holding the matrix data
//This is what is in the definition file
Matrix::Matrix(int n, int m)
{
myRows = n;
myColumns = m;
initialize();
}
void Matrix::initialize()
{
*myArr = new int[myRows];
for (int i=0; i < 3; i++)//Only set to 3 since myRows is acting crazy
{
myArr[i] = new int[myColumns];
}
}
何らかの理由で、myRows変数を使用してmyArr配列を作成すると、以前に指していた値の参照が停止しているように見えます。
たとえば、値3を指定し、* myArr = new int [myRows]が実行された後、myRowsの値を9834496に変更します。これはわかりません。
「新しい」は変数か何かを参照解除しますか?それとも私は何か間違ったことをしていますか?
ああ、これは学校の練習プロジェクトなので(あなたが答えなくてもあなたを責めることはありません)、将来のプロジェクトで何が間違っていたかを知ることができるように、作業コードよりも答えを好みます。