template-meta-programming 相关问题

模板元编程是一种元编程技术,其中编译器使用模板生成临时源代码,该代码由编译器与其余源代码合并然后编译。

Constexpr计数器可在GCC 8上使用,并且不限于名称空间范围

我正在尝试学习一些奥秘的有状态模板元编程技巧。 (这就是为什么我要学习它。不幸的是,该库在GCC 8和Clang上均不起作用。)第一件事我很明显...

回答 1 投票 3

模板专业化与CV和REF类型

为了了解元编程我创建了一个简单的例子:模板 结构add_cref {的typedefŤ常量&类型; }; //模板 结构add_cref

回答 1 投票 2

的N-维嵌套metaloops与模板

我试图做的N-维嵌套metaloops用模板元编程。嵌套部分是微不足道的,但是通过迭代指数的所有任意数量的模板参数...

回答 2 投票 7

如何检查一个类是否有一个模板调用运营商不知道它的返回类型? [重复]

我有一个模板函数模板 汽车FOO(F F){...}在这个函数中,我要排序,调用F:我要打电话F.template运营商() (), 没有 ...

回答 1 投票 -1

编译器如何找到模板最佳匹配和计算表达式

我的问题是幼稚的,但帮助我了解,如果我的推论是正确的。这里是看沃尔特·布朗E.约元编程视频会议的一部分后,我开发的代码。编码 ...

回答 1 投票 0

C ++ 11 Pack扩展参数赋值y成员初始化错误编译

我一直在开发一个通用队列,但我在包装器中失败了,它将满足队列的不同实现(链表,固定堆栈)。因此我需要使用variadic ...

回答 1 投票 0

使用SFINAE根据包的大小启用部分特化

我正在尝试在编译时制作一个适用于字符的模板。在这个例子中,我想强加一个约束条件,即必须始终存在一定数量的字符的精确倍数....

回答 4 投票 3

如何在C ++中更改第n个模板参数?

如果我使用以下类型:模板 类选项;使用myOpts =选项<51,8,12>;会有......

回答 1 投票 3

如何获得可调用类型的签名?

我想构建一个漂亮的现代界面来构建计算树,如下所示:auto [F,G] = calcs.emplace([](int a,int b){return a + b;},[]( ){return 4;}); ...

回答 1 投票 1

如何使用隐式模板类型推导

我正在尝试编写一个模板来计算编译期间数字的功效(我不是模板元编程专家所以任何评论都表示赞赏)。下面是代码:模板

回答 2 投票 10

由“using”推导出的std :: function和function type没有相同的类型

这是一个小例子,用于显示两个不同的函数类型的区别:#include #包括 #包括 模板

回答 1 投票 0

从自动模板参数回调中提取参数[重复]

我试图从作为模板参数给出的回调推断出回调函数参数。我找到了之前的答案:你能从模板参数函数签名中提取类型吗?

回答 2 投票 3

Erwin Unruh的例子今天有用吗?

以下是来自Erwin Unruh的示例,该示例以使用C ++模板元编程在编译器错误消息中生成素数而闻名,如下所示。 // Erwin Unruh,无标题程序,// ANSI ......

回答 2 投票 2

缩小C ++概念以排除某些类型

假设我想要为ostreams和所有容器重载左移位运算符。这就是我目前所拥有的(使用-fconcepts编译):#include #包括 ...

回答 1 投票 4

我可以创建一个可以接受任何枚举的模板(非类型)参数类吗? C ++ 11

这是一些示例代码的片段,它对模板进行递归。我正在尝试创建一个算法,它采用任何枚举(从0 ... n,顺序)并执行基于这些的'算法'...

回答 1 投票 1

用C ++元编程风格实现RLE算法

我已经为RLE(运行长度编码)实现了一个简单的递归算法。代码:#include using namespace std;模板 struct RLE {static size_t cnt; ...

回答 1 投票 1

模板元编程递归上限?

我正在编写一个非常简单的模板类,使用元编程在编译时计算总和,如下所示:#include using namespace std;模板 class Sum {public:...

回答 2 投票 13

迭代模板int

我有一个功能:模板 constexpr std :: array get_array();我想在很多类型和许多整数上测试它。在伪代码中:auto types = {...

回答 3 投票 2

如何在编译时从两个索引序列创建一个数组

(剧透 - 这是一个自我回答的问题)让我假装我有两个索引序列,例如使用i1 = std :: index_sequence <1,3,5,7>;并使用i2 = std :: index_sequence <2,4,6,8> ...

回答 5 投票 6

在编译时确定类型是否为STL容器

我想编写一个模板来确定类型是否是编译时的stl容器。我有以下代码:struct is_cont {}; struct not_cont {};模板

回答 6 投票 18

© www.soinside.com 2019 - 2024. All rights reserved.