ベクトル内の情報を 1D 配列として提示する賢い方法があるかどうか疑問に思っていました。例: 5x3 int 要素のベクトルのベクトルを作成しましょう
vector< vector<int>> iVector;
ivector.resize( 5 );
for(i = 0; i < 5; i++){
iVector[i].resize(3);
}
しかし今、この構造を 1D 配列に変換したいと思います。
int* myArray = new int[5*3];
したがって、次のように必要な各要素にアクセスできます。
for (i =0;i < 5; i++)
for(j =0; j< 3; j++)
myArray[i*3+j] = ...
ベクトルを要素ごとに配列にコピーできることはわかっていますが、ベクトルから配列への変換に直接対処する方法があるかどうか疑問に思っていました。ベクトルは としてアドレス指定できることも知っていますiVector[i][j]
が、残念ながら GPU に送信され、GPU はベクトルを認識しないため、配列である必要があります。