したがって、「ポインタの配列」を示す次のコードがあります(私は思います)
main() {
int *array[3];
int x = 10, y = 20, z = 30;
array[0] = &x;
array[1] = &y;
array[2] = &z;
return 0;
}
ここで、sの代わりに、int
作成したオブジェクトクラスの一種であるとしましょう。
したがって、この配列からメンバーを削除したいと思います(つまり、deleteキーワードを使用してそのデストラクタを呼び出し、オブジェクトを破棄しますが、ポインタは正常なままです)。
私の疑いが正しければ、それは不可能であり、私が持っている唯一の選択肢は、配列の内容を新しい配列(削除したいものを除く)にコピーしてから、前の配列を削除することです(全体として、そのすべての要素を含む)新しいものをポインターに割り当てますarray
特に「ポインタの配列」という名前は非常に誤解を招くため、誰かが私の疑惑を確認または修正していただければ幸いです。ありがとうございました。