Templates 问答列表

const char* 的模板方法专用化

作者:François Beaune 提问时间:7/30/2017

请考虑以下代码片段: struct S { template <typename T> void insert(const T& x); }; template <> void S::inse...

C++ − 单个参数包是否可以在单个表达式中多次扩展?

作者:Thibault de Villèle 提问时间:11/15/2023

我有一个函数,它采用 3 个模板参数:两种类型和一个整数常量(用于特征存储要求)。它看起来像以下模板: template <typename VertexType, typename IndexTy...

为什么我无法推断出可变 lambda 的函数签名?

作者:bradgonesurfing 提问时间:9/28/2021

我有以下代码来实现 memoize 函数。 注意问题不在于如何专门编写一个记忆函数,而在于我在这个实现中得到的编译错误以及让它工作的最小更改。 实现。 #include <functional>...

参数类型为“const T &amp;”和类型为“const T&lt;U&gt; &amp;”的复制构造函数之间是否有区别?

作者:QuaternionsRock 提问时间:9/9/2021

从 C++ 11 开始,定义了三个构造函数,这些构造函数大致等同于以下类中的构造函数:std::allocator template<typename T> class allocator { pu...

每个派生类的复制构造函数

作者:prestokeys 提问时间:5/3/2022

请考虑以下代码。我希望该函数无需在每个具体派生类型中定义复制构造函数即可工作。 只有当它不是抽象的,但它是抽象的时,它才能以所示的方式在中间类中完成。那么在这种情况下,我该如何让它工作呢?conver...

如何将 pimpl 成语与模板化函数一起使用

作者:Tharani B 提问时间:1/24/2023

我有一个具有模板成员函数的类,私有成员需要通过 pimpl idiom 方法放入实现类中。 Foo.hpp的 #include <iostream> class Foo { public: pri...

类构造函数在 clang 上编译,但在 gcc 上被拒绝

作者:Baki 提问时间:4/29/2023

我正在学习C++中的构造函数。特别是,一个 C++ 类可以有多个构造函数。但后来我制作了以下程序,该程序适用于 clang,但不适用于 gcc 和 msvc。 template<typename T...

参数包模板化构造函数删除复制分配

作者:user1470475 提问时间:5/9/2023

试图理解为什么为类使用参数包模板化构造函数显然会导致复制构造函数和复制赋值运算符都被优化。(实际上,我可以看到编译器如何无法将复制构造函数签名与模板化构造函数区分开来,但是当使用复制赋值运算符时,这似...

如何处理非平凡析构函数类型的可变参数模板构造函数

作者:DWil 提问时间:10/10/2023

我正在编写一个容器,该容器的行为类似于 std::optional,但如果发生错误,则保留 ErrorType。 我在转发具有非平凡析构函数的类型的构造时遇到了问题 - 特别是可以用 .std::i...

如何验证两个嵌套变体是否共享同一类型

作者:Eyal Kamitchi 提问时间:9/25/2023

该代码使用嵌套的 s 对消息进行建模:std::variant class A{}; class B{}; class C{}; class D{}; using CMD1 = std::varia...


共77条 当前第1页