0
3次元配列の2番目の位置にアクセスするのに問題があります。 を参照してくださいコード:位置2の3次元配列にアクセスする方法C++
int qtdMosquitos = 2500000;
int altura = 500, largura = 500, i, j, k, qtdMosquitoPorCelula = qtdMosquitos /(altura*largura);
long id = 1;
Mosquito* mosquitos[qtdMosquitos][qtdMosquitos][qtdMosquitoPorCelula];
Mosquito* listaMosquitos[qtdMosquitoPorCelula];
for (i = 0; i < altura; i++) {
for (j = 0; j < largura; j++) {
for (k = 0; k < qtdMosquitoPorCelula; k++) {
Mosquito* mosquito = new Mosquito();
mosquito->setId(id);
mosquito->setState("S");
listaMosquitos[k] = mosquito;
}
mosquitos[i][j] = listaMosquitos;
}
}
次のエラーが表示さmosquitos[i][j] = listaMosquitos;
ライン:
main.cpp|24|error: invalid array assignment|
私が言うエラーを理解し、私は原因を見つけることができない、私たちはすでにと3Dマトリックスのインスタンスを作成しました単純な配列変数qtdMosquitoPorCelula
と同じ変数。
3Dアレイの値を設定してもらえますか? matrix[0][1] = arraySimples;
あなたはあなたの行列で、[I、J] ''位置に配列全体を割り当てています。このようにすることはできません。配列をループして各要素をコピーする必要があります。 –