Iterator를 전달하고 다른 함수로 전달해야하지만 특정 요소를 건너 뛰도록 필터링했습니다 (포인터 범위이므로 NULL 포인터를 필터링해야합니다).boost :: filter_iterator - 어떻게 STL로 그렇게 할 수 있습니까?
"stl 필터 반복기"검색 방법을 보려면 boost::filter_iterator이 나타났습니다.
멋지게 보이고 사용할 수 있지만 좋은 오래된 STL로도 할 수 있을까요? 물론 새로운 컨테이너에 요소를 복사하지 않고.
필자는 필요한 begin()
, end()
등의 함수를 제공하고 필터링을 수행하는 다른 반복기 클래스를 만들어야한다고 생각하십니까? 그래서 정확히 다시 구현해야 할 것입니다 boost
iterator_filter
...?
약간 부정적 : 부스트가 설치하기가 번거롭고 때로는 여분의 의존성을 원하지 않는 경우가 있습니다. 필자는 실제로 filter_iterator를 다시 작성하지 않을 것이라고 생각한다. 실제로 제대로 작성하는 것은 매우 어렵다. –