- ループを使用した方法: スタックのトップからボトムまで順番にアクセスするために、ループを使用します。以下は、スタックを反復処理するための基本的なコード例です。
while (!stack.empty()) {
// スタックのトップの要素を取得
int element = stack.top();
// スタックのトップの要素を処理する
// ...
// スタックのトップの要素を削除
stack.pop();
}
- イテレータを使用した方法: C++の標準ライブラリには、スタックを反復処理するためのイテレータが用意されています。以下は、イテレータを使用したコード例です。
// スタックのイテレータを初期化
std::stack<int>::iterator it = stack.begin();
// イテレータを使用してスタックを反復処理する
while (it != stack.end()) {
// イテレータが指す要素を処理する
// ...
// イテレータを次の要素に進める
++it;
}
- 範囲ベースのforループを使用した方法: C++11以降では、範囲ベースのforループを使用してスタックを反復処理することもできます。以下は、範囲ベースのforループを使用したコード例です。
for (int element : stack) {
// スタックの要素を処理する
// ...
}
以上が、C++でスタックを反復処理する方法とそれに対するコード例です。必要に応じてこれらの方法を適用し、スタックの要素を効果的に処理できるようにしてください。