金歌 发表于 2023-9-27 21:56:21

模板特化的多维度挖掘

  假如我有一个需求,就是如果传入的参数是int类型,我就输出int类型,否则就输出T。很显然,根据模板的基础知识,我们可以这么写
template void f(T) {    std::cout   假设我现在再提一个需求,就是只能实现一个函数,且只能接受int类型的参数,其它类型均不能通过编译。这时候如果你仅仅单纯地void f(int),那么即便你传入double类型进来,它也会发生类型转换并执行这个函数,这并不是我们想要的。因此,我们可以考虑用std::enable_if_t来实现。</p>template std::enable_if_t h(T) {    std::cout
页: [1]
查看完整版本: 模板特化的多维度挖掘