C++函数指针作为默认模板参数

ura*_*ray 6 c++ templates arguments default function-pointers

如何将函数指针编写为默认模板参数,我猜这样写:

template<typename R,
         typename A,
         typename F=R (*PF)(A)> 
class FunctionPtr { ...
Run Code Online (Sandbox Code Playgroud)

我的问题是,

1.有可能吗?

2.如果是,我上面的猜测代码是正确的,PF这里的目的是什么?我需要这个吗?

ken*_*ytm 3

  1. 是的
  2. 不,你不需要 PF。

    template<typename R,
             typename A,
             typename F=R (*)(A)> 
    
    Run Code Online (Sandbox Code Playgroud)