如何将tanh函数作为参数传递给另一个函数?

Tir*_*esi 2 c++

我有一个函数,它将另一个函数作为参数:

#include <functional>
void someFunc(const std::function<float(float)> &fn);
Run Code Online (Sandbox Code Playgroud)

如何将函数tanh作为 的参数传递someFunc?当我执行以下操作时,出现错误cannot determine which instance of overloaded function "tanh" is intended

#include <cmath>
someFunc(tanh);
Run Code Online (Sandbox Code Playgroud)

S.M*_*.M. 6

someFunc(static_cast<float(*)(float)>(tanh));
Run Code Online (Sandbox Code Playgroud)

或声明

void someFunc(float(*fn)(float));
Run Code Online (Sandbox Code Playgroud)

并分配给std::function<float(float)>函数内部类型的变量。