-Version: 4-
Mandatory part 필수 사항
- 다음의 컨테이너들을 .hpp 에 구현하여 제출하세요.
- 여러분은 반드시 평가시 테스트에 사용할 main.cpp 도 같이 제공해야합니다.
- 멤버 함수, 비멤버 함수, 오버로드를 모두 구현해야 합니다.
- get_allocator 맴버 함수를 구현하지 않아도 된다면, std::allocator 을 사용할 수 있습니다.
- 각각의 컨테이너에 사용된 내부 데이터 구조의 당위성을 반드시 설명할 수 있어야 하며, 맵 컨테이너에 단순히 배열을 사용한 것은 허용되지 않습니다.
- 만약 컨테이너가 iterator 를 가지고 있다면 반드시 재구현해야합니다.
해당 사이트 cplusplus.com 에서 구현해야 하는 C++98 버전을 참고하실 수 있습니다.
cppreference.com 는 최신 버전에 조금 더 정확합니다.
- standard 컨테이너가 가진 public 함수보다 더 많은 public 함수를 구현할 수 없습니다. 그 외의 것들은 private 이나 protected 이어야 합니다. 각 public 함수/변수들은 반드시 정당한 방식으로 사용되어야 합니다.
- non-member overloads 에 한해서 friend 키워드가 용인됩니다. 모든 friend 의 사용은 정당한 방식으로 사용되어야 하며, 채점시에 채점자가 확인할 것입니다.
- 여러분은 반드시 다음의 컨테이너들과 그 안의 함수들을 구현하여 제출해야합니다.
-Vector
-Map
-Stack
- STL 의 사용은 금지입니다. 그러나 STD library 는 사용 가능합니다.
Bonus Part
As a bonus one last container:
• Set - But this time a Black - Red tree is mandatory.