c++ - 具有模板非类型参数的成员变量没有模板类?
问题描述
我正在尝试实现一个具有 linear_congruential_engine 成员的类。我不想强制实现,但我不确定这是否可行,因为 linear_congruential_engine 是作为具有非类型参数的模板实现的。
我想要实现的示例:
template <class T> MyClass {
protected:
template<T a, T c, T m>
std::linear_congruential_engine<T, a, c, m> randEngine;
public:
template<T a, T c, T m>
MyClass(std::linear_congruential_engine<T, a, c, m> randEngine) {
this->randEngine = randEngine;
}
}
允许:
int main() {
MyClass<uint32_t> ex1(std::minstd_rand0());
MyClass<uint32_t> ex2(std::minstd_rand());
}
这可能吗?我的直觉说不,但希望更熟悉模板的人可以告诉我其他情况或建议一个聪明的解决方法。
解决方案
推荐阅读
- google-apps-script - 试图创建一个谷歌脚本来为新站点生成一个浮动按钮
- django - 当前用户文件上传的 Django 动态初始值
- node.js - 多个功能的nodejs异步/等待放置
- node.js - 默认时区不适用于 postgres 中的 sequelize 查询
- c# - 网页 ASP.NET Core 单选按钮的部分更新
- angular - Angular打开新窗口并显示xml
- performance - 缓慢的内存收集,每秒约 500 个请求
- python-3.x - Selenium.webdriver:Chrome 无法启动:崩溃。作为 Cronjob 运行时
- macos - 如何在 SwiftUI 中为文本保留空间
- git - 如何计算 git 存储库中功能分支的“提前期”?