본문 바로가기

공부/Standard Template Library (C++ STL)

[C++ STL] Stack

1. Stack

- LIFO 자료형이다.

- 가장 나중에 들어간 자료가 가장 먼저 나온다.

- 임의 접근이 불가능하다.

- 내부는 deque로 구성되어 있다.

 

2. Include

#include <stack>

 

3. 선언

std::stack<T> name;
std::stack<T> name(otherStack);
std::stack<T> name(otherDeque);

namespace std를 사용함.

이미 만들어져있는 stack이나 deque를 사용하여 생성 가능.

 

4. function

// stack의 제일 위에 새로운 data 삽입
void push(T)

// stack의 제일 위에 있는 data를 제거(반환값 없음)
void pop()

// stack의 제일 위에 있는 원소의 값을 반환한다.
reference top()

// stack의 원소 수를 반환
size_type size()

// stack이 비어있으면 true를 반환
bool empty()

// 두 stack의 내용을 바꾼다.
void swap(stack& _Right)

// T의 생성자에 파라미터를 넘겨서 T객체 생성후 push
void emplace(_Valty&&... _Val)

 

'공부 > Standard Template Library (C++ STL)' 카테고리의 다른 글

[C++ STL] Set, Multiset  (0) 2019.04.26
[C++ STL] Vector  (0) 2019.04.26
[C++ STL] Deque  (0) 2019.04.26
[C++ STL] List  (0) 2019.04.25
[C++ STL] Queue  (0) 2019.04.25