stack<int> st;とすれば、基盤コンテナはdequeです。
vectorを基盤コンテナにしたい時は、
stack<int, vector<int> > st;とします。
通常はdequeを基盤コンテナにします。 stackのメンバ関数にはpush, pop, size, empty, topがあります。 結局これらの関数は基盤コンテナの関数を利用しています。
では、サンプルを見てみましょう。
// stack01.cpp #include <iostream> #include <stack> using namespace std; int main() { stack<int> st; int n; while (1) { cout << "正の整数(0で終了)---"; cin >> n; if (n == 0) break; st.push(n); } cout << "入力が終了しました。" << endl; while (!st.empty()) { cout << st.top() << endl; st.pop(); } return 0; }では、実行結果を見てみましょう。
pushしたものをpopで取り出しています。
Update Oct/12/2004 By Y.Kumei