내가 템플릿 클래스를 컴파일 할 때, 나는 다음과 같은 오류가있어 : 채널 파일에서C++ 템플릿, 오류가 어디 표준 반복자
C.cpp: In member function 'void PeriodContainerAdvanced<T>::add()':
C.cpp:133: error: type/value mismatch at argument 1 in template parameter list for 'template<class _T1, class _T2> struct std::pair'
C.cpp:133: error: expected a type, got 'std::map<int,T,std::less<int>,std::allocator<std::pair<const int, T> > >::iterator'
C.cpp:133: error: invalid type in declaration before ';' token
클래스 : (간체)
template <class T>
class PeriodContainerAdvanced
{
[skip]
void add();
[skip]
}
C.cpp (간체) :
template <class T>
void PeriodContainerAdvanced<T>::add()
{
[skip]
std::pair<std::map< time_t, T >::iterator, bool> ret; // line 133 !
[skip]
}
그리고 다른 기능에서 유사한 오류가
을 정의 할 때 이 라인 컴파일러 후std::map< time_t, T >::iterator it, it_start, it_end; // line 153
말 :
C.cpp:153: error: expected `;' before 'it'
C.cpp:166: error: 'it_start' was not declared in this scope
어떻게 그것을 해결하기 위해? 종속 이름의 감사
는
감사합니다. 그 이름은 – abrahab