컨테이너 클래스 (Container Class)
다수의 데이터 객체를 저장하는 자료구조 class
class Bag {
public:
Bag (int bagCapacity=10); // 생성자
~Bag(); // 파괴자
int Size() const; // Bag의 원소 수 반환
bool IsEmpty() const; // Bag이 공백인지 아닌지
int Element() const; // Bag에 있는 원소 반환
void Push(const int&); // Bag에 정수 삽입
void Pop(); // Bag에 정수 삭제
private:
int *array;
int capactiy; // 배열 크기
int top; // 배열에서 top 원소 위치
}
※ const 멤버함수는 class 내 멤버 변수 치환 불가
Template 이용
template <class T>
class Bag {
public:
Bag (int bagCapacity = 10);
~Bag ();
int Size() const;
bool IsEmpty() const;
T Element() const;
void Push(const T&);
void Pop();
private:
T *array;
int cpapcity;
int top;
}
template class의 인스턴스화
Bag<int> a; // int형 container
Bag<Rectangle> r; // Rectangle형 container
'알고리즘 > C++' 카테고리의 다른 글
4. 큐 (Queue) (0) | 2020.07.21 |
---|---|
3. 스택 (Stack) (0) | 2020.07.21 |
2. 배열 (Array) (0) | 2020.07.13 |
1. 기본 개념 (0) | 2020.07.12 |
C++ 배열 동적할당 (0) | 2020.06.23 |