variadic-templates 相关问题

可变参数模板是采用可变数量参数的模板。

展开可变模板折叠表达式

模板 使用 Type = std::variant, std::shared_ptr, std::shared_ptr>; 我如何使用可变模板和折叠

回答 1 投票 0

在 c++ 中的可变参数函数中使用默认参数调用函数

我正在尝试学习可变模板函数,所以我尝试制作一个函数“timeIt”,它接受另一个函数并调用它。 #包括 #包括 #inclu...

回答 3 投票 0

为什么这个 type_traits 代码给我一个整数到指针转换警告?

在不赘述的情况下,我创建了一个可变参数模板函数,它根据模板参数的类型做不同的事情。我将实现简化为重新...

回答 1 投票 0

具有 enable_if 和 is_constructible 的可变参数构造函数

我有一个名为 NameAndTag 的类。它有构造函数: 名称和标签(); NameAndTag(std::string name_or_tag); NameAndTag(boost::uuids::uuid 标签) : 标签(标签) {} 现在,我想定义另一个

回答 0 投票 0

bswap_impl 中 std::index_sequence 和 void 转换的目的

这里和这里有多个关于类型转换为 void 的问题。 我的问题是,void casting (void)dummy_pack; 的目的是什么?在 en.cppreference.com/w/cpp/language/fold 中?是不是

回答 1 投票 0

在运行时循环可变模板类型

我将代码从 C++11 迁移到 C++17。在该代码中,我做了类似这样的(无效的)代码: 模板 std::vector 存储类型() { std::向量 我将代码从 C++11 迁移到 C++17。在该代码中,我做了类似这样的(无效的)代码: template <typename... Ts> std::vector<std::size_t> store_types() { std::vector<std::size_t> t; for(typename T : Ts) t.push_back(typeid(T).hash_code()); return t; } 目前,我的实现如下: template <typename Unused> void add_types_in(std::vector<std::size_t>&) {} template <typename Unused, typename First, typename... Others> void add_types_in(std::vector<std::size_t>& t) { t.push_back(typeid(First).hash_code()); add_types_in<Unused, Others...>(t); } template <typename... Ts> std::vector<std::size_t> store_types() { std::vector<std::size_t> t; add_types_in<void*, Ts...>(t); return t; } 我在 C++17 中看到了很多可变参数功能,但还有很多东西我还不明白。 C++17 中是否有比我的实现更优雅(又名“单行”)的东西? 也许类似于折叠表达式的东西?

回答 0 投票 0

如何在具有 Q_OBJECT 的类中创建具有可变数量参数的方法? [重复]

这篇文章不仅仅是关于一般未解析的链接器符号;但是类中带有 Q_OBJECT 宏的可变参数函数。宏创建了很多由moc自动生成的组件

回答 0 投票 0

Variadic 模板继承 C++ 在 gcc 11 中不起作用,但在 visual studio 中起作用 [重复]

以下示例无法在 g++ v11 中编译,但在 msvc 中可以吗?它给出了错误 错误:使用未声明的标识符“m_i” [建造] m_i = 10; [构建] ^ 使用标准 17。我个人...

回答 0 投票 0

Fold expression for a parameter pack with comma operator: How to add additional parameters when expanding the pack?

我想设计一个编译时字符串类 CTString,例如由字符串文字的参数包构造。这使用逗号折叠表达式(对于这个玩具示例,我尝试

回答 1 投票 0

C++ 如何在运行时以编程方式更改调用指令

在进入问题的细节之前,我想透露一下,这是作为一项研究任务交给我的,因此可能会也可能不会。简而言之,最终目标是上课,

回答 1 投票 0

c++:连接从模板参数生成的字符串文字

我想根据模板参数的变量数量的类型生成一个字符串文字。每种类型都应翻译成字符串文字(1 个或多个字符),然后是文字 ...

回答 0 投票 0

使用可变参数模板,模板本身带有可变参数?

可以制作一个可变模板模板,它本身带有可变参数吗? 如何明确/部分专门化此模板? //例如。以下内容有效的内容: 温度...

回答 0 投票 0

检查可变参数模板中没有重复类型的 C++ 概念

我正在尝试弄清楚如何编写一个概念来检查可变参数模板中是否没有重复的类型。 我知道我不能在其自身内递归地调用一个概念,但如果我可以的话......

回答 6 投票 0

多个模板相关参数

我不确定问题名称是否真的反映了我在这里问的问题,所以如果有更好的标题请告诉我。 我有一个代表一个值的类,可以通过...

回答 2 投票 0

我需要帮助创建基于可变模板类参数的函数类型声明

我想在可变模板类中创建一个函数类型声明。该函数需要接受模板参数列表对应的参数。我想弄清楚是否...

回答 2 投票 0

在可变参数模板中使用元组

我正在设计一个记录器。我会格式化它。我做了一个设计,我会预先确定格式字符串,然后将这些数据保存在一个元组中并将其打印到日志中。 下面的代码现在可以工作了,b...

回答 0 投票 0

访问另一个别名中的个别别名,这是一个带有折叠表达式的参数包

鉴于这种类型: 模板 结构 base_unit { 使用比率 = r; 使用符号 = s; }; 模板 结构派生单元{ 使用单位 = ...

回答 1 投票 0

C++ 中的 Zip 类(内部对象生命周期)

我在 C++ 中有以下 Zip 类,它的工作方式与 Python 的 zip 相同。 当我运行下面的代码时,我得到了这个输出: 1 | 11 2 | 22 3 | 33 1 | 11 | 0 <--- problematic 2 | 22 | 6.

回答 3 投票 0

你如何编写一个函数模板来确定两个任意变体是否持有相同的类型?

考虑以下函数来确定相同变体类型的变量是否持有相同的类型: #包括 #包括 模板...

回答 2 投票 0

模板、良构和零包长度规则

从上一个问题的公认答案中,我发现了一个我不知道的关于模板和格式良好的规则 如果出现以下情况,则程序格式错误,不需要诊断: [...] ……

回答 1 投票 0

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