boost-mpl相关内容

我们如何使用 boost::mpl 实现 Builder 设计模式?

我有三个类,它们遵循相同的概念类,但在用于存储的底层数据结构上有所不同.以下面给出的三个类为例. 模板A类{std::vector贮存;//等等};模板A类{boost::dynamic_bitset贮存;//等等};B类{复杂的UDT存储;//等等}; A 类是使用向量的泛型类.为避免使用vector,提供了A 类的完整特化,它使用boost::dynamic_bitset 作为底层 ..
发布时间:2021-11-17 03:07:50 C/C++开发

提升多索引将索引转换为标签并在索引上循环

我有一个模板类(CrMultiIndex),它接收一个模板参数,该参数定义了boost multi index(GlobalHash)。我使用c ++ 14 我需要一种将索引转换为标签(n_to_tag)的方法?并在CrMultiIndex ctor或Init函数中循环索引? 我的最初目的是循环索引并在初始化时生成带有typeid(T).name()的标签名称字符串。这样我就可以根据标签名 ..
发布时间:2020-06-06 20:14:06 C/C++开发

带有boost :: mpl :: for_each的类型包装器错误(Abrahams& Gurtovoy书中的9.1.1节)

以下代码几乎逐字地从David Abrahams& Co.的《 C ++模板元编程:Boost and Beyond的C ++模板元编程:概念,工具和技术》一书的第9.1.1节中复制而来。 Aleksey Gurtovoy。 唯一的变化是,我希望能够使用常规的Boost模板mpl :: identity从书中更改类型包装器模板。但是,在Microsoft Visual C ++ Expres ..
发布时间:2020-06-06 20:13:52 C/C++开发

如何在编译时连接const char *

我有一个mpl :: string的向量。 mpl :: string大小限制为32个元素。有一种方法可以在编译时创建const char *数组 MACRO(z,i,data)数据 。 ............ const char * array [] = {BOOST_PP_ENUM(SIZE,MACRO,mpl_vector)}; 但是我需要在编译时得到一个c ..
发布时间:2020-06-06 20:13:50 C/C++开发

如何在编译时将C字符串转换为int?

我希望能够传递整数或双精度(或字符串)作为模板参数,在某些情况下将结果转换为整数,并将其用作模板参数 这是我尝试过的内容: 模板 类A { //以下工作正常 int fun() { //此函数应在boost mpl中返回int传递给它的类型 // //(例如,其形式可能是“ 123”) 返回std :: stoi(boost : ..
发布时间:2020-06-06 20:13:46 C/C++开发

boost :: mpl:如何为具有超过50个条目的列表生成预生成的头文件?

我发现这里一些python脚本为具有超过50个条目的列表生成头文件。 但我不能管理生成一个单一的头文件。有人可以向我解释如何使用这些脚本?我也没有在提升文档中找到任何帮助。 任何帮助将不胜感激。 解决方案 重要更新: 一个更好的脚本,只需要一个有效的 python 环境在此答案中对此问题进行了说明。 原始答案 查看我的 answer 到您的问题 以下ba ..
发布时间:2016-10-30 16:12:56 C/C++开发