如果函数参数里含有DT,你这个似乎应该用两个模板函数(重载)
比如将:
template <typename DT, typename RDT>
RDT foo(const DT&);
改成:
template <typename T>
T foo(const T&);
temlate <typename T>
T foo(const complex<T>&);
【 在 fangniuwawa (兰州放牛) 的大作中提到: 】
: 标 题: 请教一个template中 enable_if用法的问题
: 发信站: 水木社区 (Fri May 22 19:22:34 2020), 站内
:
: 有一个模板函数
: template<typename DT, typename RDT> function(.....){....};
:
: DT的类型可以是1. double, complex<double>, 2. float, complex<float>,
: 相应的RDT要求是 1. double, 2. float.
:
: 怎么用enable_if 对RDT加以限制? 谢谢!
: --
:
: ※ 来源:·水木社区
http://www.newsmth.net·[FROM: 210.26.112.*]
--
FROM 76.126.252.*