2011-02-13 4 views
1

누구나 나를 boost::function (예 : boost::function<int (float,bool)>)과 같은 템플릿 매개 변수를 작성하는 방법을 설명 할 수 있습니까? 올바른 구문이란 무엇입니까?템플릿 매개 변수와 같은 기능

template <typename T (typename Arg1,typename Arg2)> 
struct func{}; 

그러나 그것은 작동하지 않습니다

나는이 시도합니다.

답변

5
template <typename T> 
struct func {}; 

int (float, bool) 자체가 이미 유형입니다.


만이 같은 전문화,이 매개 변수 유형의 함수 인 일치 만들려면 경우 : 방법,

template <typename T> 
struct func; 

template <typename R, typename T1, typename T2> 
struct func<R(T1,T2)> { 
    typedef R return_type; 
    typedef T1 first_argument_type; 
    typedef T2 second_argument_type; 
}; 
+0

기다립니다? 그리고 왜? 어쩌면 나는 기본적인 것을 놓치고 있지만 설명해주십시오! – Xeo

+0

@KennyTM 그런 건축물을 어떻게 사용할 수 있습니까? 예를 들어 구조체에서 변수를 선언하는 방법은 함수의 반환 유형이 어떤 유형입니까? – UmmaGumma

+0

@Ashot : 업데이트를 참조하십시오. – kennytm

관련 문제