C++ stack
LIFO(Last-In First-Out) 방식의 컨테이너
stack을 사용하기 위해서는 <stack> 헤더를 인클루드 해야한다.
멤버함수 |
|
empty() |
스택에 원소가 없는가? |
size() |
스택에 원소가 몇개 있는가? |
top() |
스택의 다음 원소는?(가장 상단의 원소는) |
push() |
스택에 원소를 추가 |
pop() |
스택에 원소를 제거 |
사용 예제
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | #include <iostream> #include <stack> int main() { std::stack<int> mystack; int sum(0); for (int i = 1; i <= 10; i++) mystack.push(i); while (!mystack.empty()) { sum += mystack.top(); mystack.pop(); } std::cout << "total: " << sum << '\n'; return 0; } | cs |
주의할 점은 top()으로 스택의 상단의 원소를 사용할 때, 원소가 제거되지 않기 때문에 pop()을 사용하여 별도로 제거 과정을 수행해야 한다.
실행 결과
'컴퓨터공학 > STL' 카테고리의 다른 글
[STL]C++ STL priority_queue (0) | 2018.07.19 |
---|---|
[STL]C++ STL queue (0) | 2018.07.19 |
[STL]bitset (0) | 2018.07.04 |
[STL] C++ STL tuple (0) | 2018.06.22 |
[STL] C++ STL pair (0) | 2018.06.22 |