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