c++ - 使用模板根据类型选择类静态函数
问题描述
模板函数根据类型返回类的静态函数。但是如何使用对象作为推导类型的参数呢?
class A {
public:
static funcA() {}
static funcB() {}
static funcC() {}
...
};
class B {
public:
static funcA() {}
static funcB() {}
static funcC() {}
...
};
using funcType = std::function<void()>
template<typename T>
funcType getfunByType(T t) {
return T::funcA
}
int main() {
A a;
B b;
// void* p = nullptr; ??
bool s = false;
if (s) {
p = &a;
} else {
p = &b;
}
// funcType func = getfunByType(&p); ???
return 0;
}
解决方案
推荐阅读
- r - 在包 sjPlot::plot_model() 中定义 y 轴范围和中断
- c# - 优化算法的起始值
- python - 如何从 JSON 文件的 csv / pandas 数据框中提取对象?
- excel - 当我打开 Excel 时,它会运行宏并更改保存的日期
- bash - Luanchd 没有启动 mopidy 和 UDP 监听器
- ruby-on-rails - 带有模态引导程序和 Cocoon gem 的 Rails 5 嵌套表单
- database - 如何使用 Jupyter Notebook 中的 !curl Unix 命令从 GitHub 检索数据集?
- spring-boot - Spring boot - 服务器无法识别 HTTP Header SOAPAction 的值
- html - 如何显示谷歌验证码?
- javascript - 如何将电子升级到最新版本?