C ++では、プログラムの実行中に新しい配列を作成することは可能ですか?具体的には、クラスにデータメンバーがあり、変数の名前がarrayであるとします。これは、サイズ10の配列です。実行時に、より大きな配列が必要な場合、ポインターを使用せずにこれを実行できますか?次のような方法はありますか?
int[] expandCapacity(int currentCapacity) {
int [] arr = new int[currentCapacity*2];
currentCapacity*=2;
return arr;
}
この方法を使用して、次のように言って現在のアレイの容量を拡張できないのはなぜですか。
currentCapacity = 10;
array = expandCapacity (currentCapacity);
これが機能する場合は、ポインタを使用する必要はありません。ここで重要な何かが欠けているような気がします。私が欠けているものを指摘していただければ幸いです。