C++模板类中的成员函数指针怎么在构造函数里初始化?跪求大侠点拨!
例如:typedefbool(*FC)(void);template<typenameT>boolfun(Ta){returna>0;}template<typename...
例如:typedef bool(*FC)(void);template<typename T>
bool fun(T a)
{
return a>0;
}
template<typename T>
class A{ T b;
FC p;
A(T a=0,FC pa=fun)::b(a),p(pa)
{}
}; 上面写的只是想表达清楚我的意思,我也没再编译器上试过。希望英雄指点一二! 展开
bool fun(T a)
{
return a>0;
}
template<typename T>
class A{ T b;
FC p;
A(T a=0,FC pa=fun)::b(a),p(pa)
{}
}; 上面写的只是想表达清楚我的意思,我也没再编译器上试过。希望英雄指点一二! 展开
2013-08-16
展开全部
构造函数有两处错误。修改成这样!
A(T a, FC pa = fun<T>) : b(a), p(pa){}
fun<T> 需要这样实例化模板
初始化参数列表前面是1个冒号,不是2个。
A(T a, FC pa = fun<T>) : b(a), p(pa){}
fun<T> 需要这样实例化模板
初始化参数列表前面是1个冒号,不是2个。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询