STL - Container/Container - Stack
Stack - 멤버 변수
Programmer.
2016. 1. 30. 01:52
자료구조 Stack는 비선형 구조이며 LIFO(Last In First Out)형태의 자료구조입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | #include<stack> #include<deque> #include<vector> #include<iostream> void print(std::stack<int> Target_Stack) { while (!Target_Stack.empty()) { std::cout << Target_Stack.top() << " "; Target_Stack.pop(); } std::cout << std::endl; } void print(std::stack<int,std::vector<int>> Target_Stack) { while (!Target_Stack.empty()) { std::cout << Target_Stack.top() << " "; Target_Stack.pop(); } std::cout << std::endl; } void main() { std::deque<int> Deque(3, 10); std::vector<int> Vector(2, 15); std::stack<int> Stack; std::stack<int> Stack2(Deque); std::stack<int, std::vector<int>> Stack3; std::stack<int, std::vector<int>> Stack4(Vector); print(Stack); print(Stack2); print(Stack3); print(Stack4); std::stack<int>::value_type; std::stack<int>::container_type; std::stack<int>::const_reference; std::stack<int>::reference; std::stack<int>::size_type; } | cs |
Vector는 다음과 같이 생성할 수 있습니다.
- Stack은 29,30,31,32줄과 같은 방법들을 이용하여 초기화 할 수 있습니다.
- 그냥 기본적으로 선언할 수 있습니다.(29줄)
- deque를 이용하여 값을 할당할 수 있습니다.(30줄)
- vector를 이용한 빈 stack을 생성(31줄)
- vector를 이용하여 생성뒤 다른 vector를 이용하여 값을 할당(32줄)
- Stack의 멤버변수
멤버이름
내용
비고
value_type
첫 템플릿 파라메터
container_type
두번째 템플릿 파라메터
const_reference
const value type&
reference
value type&
size_type
unsigned integral 형