[effective STL] 항목 10 : 할당자(allocator)의 일반적인 사항과 제약 사항
2015. 9. 14. 22:29ㆍ프로그래밍/Effective STL
728x90
728x90
정리
- 할당자를 템플릿으로 만든다. 템플릿 매개 변수에는 메모리를 할당하고자 하는 객체의 타입을 나타내는 T를 사용한다,
- 포인터와 레퍼런스라는 typedef 타입을 제공하되, 항상 포인터는 T*, 레퍼런스는 T&
- 할당자에는 객체별 상태를 절대로 주지 않는다. 일반적으로, 할당자는 비정적 데이터 맴버를 가질 수 없다.
- 할당자의 allocate 멤버 함수에는 필요한 객체의 개수를 매개 변수로 넘긴다.(바이트 수가 아님)
이 함수는 T* 포인터(포인터라는 typedef 타입을 통해) 반환(비록 T 객체는 아직 생성되지 않았지만)한다.
- 표준 컨테이너(연관 컨테이너)에서 필요로 하는 rebind라는 중첩 템플릿을 꼭 제공한다.
728x90
반응형
'프로그래밍 > Effective STL' 카테고리의 다른 글
[effective STL] 항목 15 : string은 여러 가지 방식으로 구현되어 있다. (0) | 2015.12.17 |
---|---|
[effective STL] 항목 14 : 재할당 방지 reserve (0) | 2015.12.17 |
[effective STL] 항목 13 : 동적으로 할당된 배열보다는 vector와 string이 낫다. (1) | 2015.10.02 |
[effective STL] 항목 09 : 데이터를 삭제할 때에도 조심스럽게 선택 (0) | 2015.09.07 |
[effective STL] 항목 08 : auto_ptr의 컨테이너는 절대 말들지 말기 (0) | 2015.09.06 |
[effective STL] 항목 07 : 포인터를 컨테이너 담을 때 주의 (0) | 2015.09.06 |
[effective STL] 항목 06 : C++ 컴파일러의 어이없는 컴파일 조심! (2) | 2015.09.05 |