Edw*_*uez 6 c++ templates c++11
具有以下功能
void print(int a) { cout << a << endl; }
void print(std::string a) { cout << a << endl; }
Run Code Online (Sandbox Code Playgroud)
您可以执行以下模板
template <class T> void printT(T a) { print(a); }
Run Code Online (Sandbox Code Playgroud)
是否有一些机制来参数化函数名称? 像这样的东西:
template <class T, class F> void anyT(T a) { F(a); }
Run Code Online (Sandbox Code Playgroud)
我不需要成为一个函数模板,只需要一些机制来实现相同的功能.
是的,您可以将调用者作为函数指针传递,该函数指针作为输入,T如下所示:
template <class T> void anyT(T a, void(*f)(T)) {
f(a);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
418 次 |
| 最近记录: |