stack

stackは、C++標準ライブラリのSTL(標準テンプレートライブラリ)のひとつで、dequeを特殊化してLIFO(Last In First Out)なスタックとして使うようにしたもの・・・。

stack - C++ Reference

stackは、追加は先頭からしかできない・・・。取出しも先頭からしかできない・・・。

stackをインクルード・・・。

int型stackオブジェクトstk・・・。

stk.pushで0を追加・・・。

stk.topで先頭を参照、そのまま出力・・・。

同様に、1を追加しては先頭を参照し出力、2を追加しては先頭を参照し出力・・・。

stk.popで先頭を取り出す(削除する)・・・。

stk.topで先頭を参照し、そのまま出力・・・。

同様にもう一度先頭を取り出して、そのあとの先頭を参照し、出力・・・。

この時点であとひとつなので、最後にそれも取り出す・・・。

$ vi stack.cpp
$ g++ stack.cpp -o stack
$ ./stack
stk.top() = 0
stk.top() = 1
stk.top() = 2
stk.top() = 1
stk.top() = 0
$

0, 1, 2と追加し、取り出すときは2, 1, 0となるスタックの特徴を表している・・・。

Sample/cpp/stack/stack/src/stack at master · bg1bgst333/Sample · GitHub