1
任何人都可以解释我,如何编写模板参数,如boost::function
(例如boost::function<int (float,bool)>
)。什么是正确的语法?功能如模板参数
我试试这个:
template <typename T (typename Arg1,typename Arg2)>
struct func{};
,但它不工作。
任何人都可以解释我,如何编写模板参数,如boost::function
(例如boost::function<int (float,bool)>
)。什么是正确的语法?功能如模板参数
我试试这个:
template <typename T (typename Arg1,typename Arg2)>
struct func{};
,但它不工作。
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;
};
等待,怎么样?为什么?也许我错过了一些基本的东西,但请解释一下! – Xeo 2011-02-13 18:48:01