관리 메뉴

Kim's Programming

Stack - 멤버 변수 본문

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(310);
    std::vector<int> Vector(215);
    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줄과 같은 방법들을 이용하여 초기화 할 수 있습니다.

      1. 그냥 기본적으로 선언할 수 있습니다.(29줄)

      2. deque를 이용하여 값을 할당할 수 있습니다.(30줄)

      3. vector를 이용한 빈 stack을 생성(31줄)

      4. vector를 이용하여 생성뒤 다른 vector를 이용하여 값을 할당(32줄)


    • Stack의 멤버변수

       멤버이름

       내용

       비고

       value_type

       첫 템플릿 파라메터

       

       container_type

       두번째 템플릿 파라메터

       

       const_reference

       const value type&

       

       reference

       value type&

       

       size_type

       unsigned integral 형

       




'STL - Container > Container - Stack' 카테고리의 다른 글

Stack - push()  (0) 2016.01.30
Stack - pop()  (0) 2016.01.30
Stack - Operator '='  (0) 2016.01.30
Stack - empty()  (0) 2016.01.30
Stack - emplace()  (0) 2016.01.30