2014-05-19 1 views
-2

클래스의 MessageBase이 같은 공용 템플릿 멤버 함수가 있습니다올바른 구문은 템플릿 기능을 액세스 할 수

/*! Get a pointer to a field. Inplace, 0 copy. 
     \tparam T type of field to get 
     \return pointer to field or 0 if not present */ 
    template<typename T> 
    const T *get() const 
    { 
      Fields::const_iterator fitr(_fields.find(T::get_field_id())); 
      return fitr == _fields.end() ? 0 : &fitr->second->from<T>(); 
    } 

내가

(이 경우 TEX :: MDEntryPx에) 타입 T에 대한 포인터를 선언 다음
const TEX::MDEntryPx *price = me->get(); 

기능에 액세스하려고, 그 소리는 ++ 내가 올바른 구문을 사용하고 있지 않다

main.cpp|338|error: no matching member function for call to 'get' 

로 돌아와 그러나 그것이 무엇인지 확실하지 않습니까?

+1

'me'의 선언은 무엇인가? –

답변

0

뜨아,

const TEX::MDEntryPx *price = me->get<TEX::MDEntryPx>(); 
관련 문제