구현 목록 • iterators_traits• enable_if• is_integral• equal• lexicographical_compare• SFINAE요구 사항• namespace 만들기• std::allocator• friend반복자 특질?원래는 iterato
반복자는 배열또는 컨테이너같은 어떤 요소 범위의 일부 요소를 가리키는 객체이다. 원래 포인터랑 다르지만 동작은 거의 동일하게 하는 객체라고 알고 있었는데 cplusplus 설명을 보니 The most obvious form of iterator is a pointer
vector헤더에는vector 템플릿 클래스vector<bool> 특수화 클래스beginend두가지 클래스와 두가지 함수가 있다.벡터는 크기를 변경할 수 있는 배열을 나타내는 시퀀스 컨테이너입니다.벡터는 요소를 연속적으로 저장한다. 이로인해 벡터는 배열처럼 효율적
STL 컨테이너에서 사용할 메모리 모델을 정의하는 클래스.메모리를 좀더 세밀하게 컨트롤을 할때 allocator를 사용한다.템플릿 매개변수T - 개체에 의해 할당된 요소의 타입(멤버 유형 value_type으로 별칭됨).멤버 타입생성자 일반 allocator에는 인자가
사실 이터레이터만 구현하면서 왜 enable_if와 is_integral를 구현하라는건지 잘 이해가 안갔다. 만들어도 쓸곳이 없어보였다. 하지만 벡터 생성자 구현을 하면서 왜 사용하게 되는지 이해가 갔다...벡터 3번째 생성자인 범위 생성자 때문이었다.3번째 생성자에
두 범위의 요소가 동일한지 검정하는 함수 템플릿이다.\[first1, last1] 범위의 요소를 first2에서 시작하는 범위의 요소와 비교하고, 두 범위의 모든 요소가 일치하면 true를 반환한다.요소는 operator==(또는 버전 (2)에서는 pred(함수 인자)
std::stack
맵은 특정 순서에 따라 키 값과 매핑된 값의 조합으로 형성된 요소를 저장하는 연관 컨테이너다.맵에서 키 값은 일반적으로 요소를 정렬하고 식별하는 데 사용되며, 매핑된 값은 이 키와 관련된 내용을 저장한다. 키와 매핑된 값의 타입은 서로 다를 수 있으며, 멤버 유형인 v