T=std::vector<T2>
인수 (T2
은 임의 유형 임)에만 일치하는 템플릿을 만들려고합니다. 템플릿 인수에 boost::enable_if
을 사용할 수 있습니다. 유형 T
이 std::vector
인지 여부를 어떻게 테스트합니까?일부 std :: vector에만 템플릿 사용 가능 <T2> 유형
내 템플릿에 T::iterator
을 포함하여 비 컨테이너 유형이 대체 오류를 일으키고 SFINAE로 간주되지 않도록 할 수 있습니다. 이 방법을 사용하면 T::iterator
을 정의하는 모든 컨테이너가 일치 할뿐만 아니라 std::vector<T2>
이됩니다.
+1 많은 의미가 있습니다. 나는 그 질문을 오해 한 것 같아. 나는 T2가 고정 된 타입이라고 생각했다. – sellibitze
감사합니다. std :: vector에 대한 과부하를 선호하는지 확실하지 않았습니다. – eudoxos