C++でポインタの配列をループ処理する方法


方法1: インデックスを使用してループ処理する方法

int* array[5];  // ポインタの配列を宣言
// 配列の要素に値を設定
for (int i = 0; i < 5; i++) {
    array[i] = new int(i);
}
// 配列の要素をループ処理
for (int i = 0; i < 5; i++) {
    int* ptr = array[i];
    // ポインタの処理を行う(例えば、値の表示)
    std::cout << *ptr << std::endl;
}
// メモリの解放
for (int i = 0; i < 5; i++) {
    delete array[i];
}

方法2: ポインタの範囲ベースのループ処理

int* array[5];  // ポインタの配列を宣言
// 配列の要素に値を設定
for (int i = 0; i < 5; i++) {
    array[i] = new int(i);
}
// 配列の要素をループ処理
for (int* ptr : array) {
    // ポインタの処理を行う(例えば、値の表示)
    std::cout << *ptr << std::endl;
}
// メモリの解放
for (int i = 0; i < 5; i++) {
    delete array[i];
}

方法3: イテレータを使用してループ処理する方法

int* array[5];  // ポインタの配列を宣言
// 配列の要素に値を設定
for (int i = 0; i < 5; i++) {
    array[i] = new int(i);
}
// 配列の要素をループ処理
for (auto it = std::begin(array); it != std::end(array); ++it) {
    int* ptr = *it;
    // ポインタの処理を行う(例えば、値の表示)
    std::cout << *ptr << std::endl;
}
// メモリの解放
for (int i = 0; i < 5; i++) {
    delete array[i];
}

上記の方法では、ポインタの配列をループ処理して処理を行うことができます。配列の要素にはポインタが格納されているため、ループ内でポインタを取得し、必要な処理を行うことができます。処理が終了したら、メモリを解放することを忘れないようにしてください。

このようにして、C++でポインタの配列をループ処理する方法をいくつか紹介しました。他にもさまざまな方法がありますが、これらの方法は基本的なループ処理に適しています。