C++での動的配列の拡張方法は何ですか?

C++の中で、動的配列を拡張する方法は以下の2つあります。

  1. newとdelete演算子を使用する:
  2. 新しい大きな配列を作成します。
  3. 新しい配列に元の配列の要素をコピーする。
  4. 原始配列のメモリを解放する。
  5. 新しい配列を指すようにポインタを移動する。
  6. サンプルコード:
  7. int* array = new int[10]; // 初期サイズが10の配列を作成
    // …
    int* newArray = new int[20]; // 新しい大きな配列を作成
    for (int i = 0; i < 10; i++) {
    newArray[i] = array[i]; // 元の配列の要素を新しい配列にコピーする
    }
    delete[] array; // 元の配列のメモリを解放
    array = newArray; // ポインタを新しい配列に変更
  8. std::vectorを使用する。
  9. std::vectorは、C++の標準ライブラリによって提供される動的配列コンテナであり、自動的に拡張されることができます。
  10. std::vectorにpush_backメソッドを使用して要素を追加すると、コンテナの容量が不足している場合には自動的に拡張されます。
  11. コードの例:
  12. #include
    // …
    std::vector vec; // 空のvectorを作成
    // …
    vec.push_back(10); // vectorに要素を追加し、容量が不足すると自動的に拡張されます

上記の2つの方法は、動的な配列の拡張を実現することができますが、std::vectorを使用する方がシンプルで便利であり、動的な配列を処理する際にはおすすめです。

bannerAds