1. ホーム
  2. c++

[解決済み] new演算子で配列を初期化する

2022-03-15 20:39:57

質問

中括弧で囲まれた要素をカンマで区切る形式の配列を初期化したい。

int array[10]={1,2,3,4,5,6,7,8,9,10};

しかし、メモリを確保するために new 演算子を使用する必要があります。

int *array = new int[10];

これらのメソッドを組み合わせて、new 演算子でメモリを確保し、中括弧で配列を初期化する方法はありますか?

どのように解決するのですか?

を使用することができます。 memcpy の後、アロケーションを行います。

int originalArray[] ={1,2,3,4,5,6,7,8,9,10};
int *array = new int[10];
memcpy(array, originalArray, 10*sizeof(int) );

これを自動的に行うような構文は知りません。

ずっと後の編集です。

const int *array = new int[10]{1,2,3,4,5,6,7,8,9,10};