STL 구현을위한 몇 가지 소스 (SGI, STLport, libC++)를보고 모든 디자인 또는 대부분의 구현에 공통적 인 몇 가지 디자인 패턴을 보았지만 아무 이유도 찾을 수 없습니다. 예를 들어,이 개 클래스로 구현하고, 다른 사람의 사이에서 vector
및 list_iterator
포함STL의 설계 원리
많은 클래스 : 나는 거기에 좋은 RESON, 그리고 그것이 무엇인지 알고 싶어한다 가정 기능 중 일부가 포함 된
list_iterator_base
, 나머지 인터페이스와 함께list_iterator_base
을 상속하는list_iterator
. 요점이 뭐야? 한 클래스에서 쉽게 할 수있는 것처럼 보입니다.반복기는
iterator
클래스를 사용하지 않는 것처럼 보입니다. 그것을 사용하는 데 약간의 성능상의 불이익이 있습니까?
두 가지 질문이 있습니다. 누구든지 STL 구현의 구현 근거를 설명하는 훌륭한 자료를 알고 있다면 기쁜 마음으로 알게 될 것입니다.
"점보 새우". –
기술적으로 STL과 표준 라이브러리 (stdlib)는 다릅니다. 후자는 대부분 공식 언어 표준에 추가되었을 때 전자에서 파생되었습니다. 거의 모든 사람이 "참"STL을 더 이상 사용하지 않지만 대신 표준 라이브러리 (예 : libC++)의 구현을 사용합니다. 많은 사람들이 stdlib을 STL이라고 부르지 만 괜찮습니다.하지만 질문에 대한 차이는 의미를 변경합니다. – GManNickG
@DaveNewton 귀하의 의견을 이해할 수 없습니다. – baruch