別の配列の変数を含む配列を作成したいのですが、変数をエイリアス(値ではなく)としてコピーする必要があります。ここで例えばC++のエイリアス変数の配列
int* x;
int* y;
int* z[4]; // What should I do if length of z is not known initially.
x =new int[2];
y= new int[2];
x[0]=1;
x[1] =2;
y[0]=3;
y[1]=4;
z[0] =&x[0];
z[1] = &x[1];
z[2] =&y[0];
z[3] =&y[1];
、アレイz
をx
とy
の参照によってなされます。 'z'の変更点はx
とy
であり、その逆もあります。
必要なもの:
2)z
は、整数へのポインタの配列です。どのように整数の配列に変換するのですか?
3)ポインタは管理が難しいため、どのようにベクトルを使って同じ機能を得るのですか。私の知識によると、ベクトルは参照を格納することができません。
'std :: reference_wrapper'は助けになりますか? – Bathsheba
あなたの問題が1)で理解できません。実行時にすでに 'z'を割り当てています。 2) 'z'は整数へのポインタの配列ではありません。 – Rakete1111
と 'std :: vector'は生ポインタを置き換えます。 – Jarod42