模板-元编程 问答列表

如何在运行时在boost::fusion::vector中找到元素?

作者:sbi 提问时间:11/22/2013

我这里有一个通用状态机的专有实现,它使用 a 作为转换表:std::tr1::tuple template<State StartState, Event TriggerEvent, State T...

为具有对象或对象数组作为成员的类运行不同的代码

作者:Luchian Grigore 提问时间:2/22/2014

我有一个将对象作为参数的方法 void fun(const Obj& obj) Obj可以通过两种不同的方式定义: struct Obj { Type x; }; 和 struct O...

如何从任何可调用的函数中获取有意义的函数签名

作者:sbi 提问时间:8/19/2014

想想这样的野兽: template<typename Func> void register_function(Func func) { // type-erase Func and pass i...

如何在编译时从类型创建静态字符串

作者:sbi 提问时间:10/23/2013

我有一堆有名字的类型。(它们具有更多功能,但出于讨论的目的,仅名称相关。这些类型及其名称是在编译时使用宏设置的: #define DEFINE_FOO(Foo_) \ struct Foo_ : ...

从升压融合适配结构中获取成员类型列表

作者:Vladimir 提问时间:10/24/2019

我有像这样的增强融合适应结构: struct A { int x; double y; std::string z; }; BOOST_FUSION_ADAPT_STRUCT( A, x,...

为什么这个 c++ 模板代码在“&lt;”标记之前出现“预期”;“错误?

作者:Xiaoyong Guo 提问时间:12/22/2020

该代码旨在解决这个问题:如果我们知道一个签名并绑定了前 n 个参数的参数,那么如果前 n 个参数是有界的,则获取新的调用签名。 但是当我尝试编译代码时,gcc 会出现错误。 a.cc:23:62:...

为什么 GCC 允许在此函数模板中推导返回类型,而 MSVC 和 Clang 不允许?

作者:Tharwen 提问时间:7/10/2019

代码示例: class A { static constexpr auto GetInt() noexcept { return 6; } template<int N> std::enab...

将所有 boost 融合映射键收集到 std::tuple 中

作者:Juergen 提问时间:10/20/2021

请考虑以下代码片段: #include <boost/fusion/container/map.hpp> #include <boost/fusion/sequence/intrinsic/at_k...

当包装在 method 中时,类型会成功扣除,但在直接别名中使用时则不会

作者:Nufun 提问时间:3/21/2022

类型演绎被包装方法的代码 struct InterfaceOverriderFactory { template <typename Interface> decltype(auto) oper...

使用模板元编程在 C++ 中生成组合列表的最简单方法是什么?

作者:ajl123 提问时间:7/18/2023

我找到了SO帖子:在C++中生成组合列表的最简单方法是什么?,它告诉我们如何在运行时生成大小为真/假元组的所有可能组合的列表。N 但是,如果我们知道,我在编译时也有同样的问题。我们将如何使用模板递归...


共13条 当前第1页