声明为默认值的赋值操作是否可以具有引用限定符?
作者:Myrddin Krustowski 提问时间:11/10/2022
当将赋值操作声明为 时,使它们成为引用限定以防止赋值给临时操作有什么错误吗?(大多数情况下,它可以防止愚蠢的错误)。 通用资源,不要说任何关于“默认”操作的引用限定符,到目前为止我看到的几乎每个示例都...
五 问答列表
作者:Myrddin Krustowski 提问时间:11/10/2022
当将赋值操作声明为 时,使它们成为引用限定以防止赋值给临时操作有什么错误吗?(大多数情况下,它可以防止愚蠢的错误)。 通用资源,不要说任何关于“默认”操作的引用限定符,到目前为止我看到的几乎每个示例都...
作者:incubus 提问时间:7/6/2021
在使用接口(无论如何是这个概念)和抽象类时,我试图弄清楚五法则,并努力理解规则是如何工作的。 假设我有一个这样的布局: #include <memory> #include <optional> ...
作者:user_185051 提问时间:9/8/2020
如果我有一个班级,成员是这样的: class MyClass { public: void set_my_vector() { for (int ind = 0; ind < 3; ++ind)...
作者:Rsevero 提问时间:1/30/2022
我正在研究五法则和它的表亲(四法则和 1/2、复制和交换成语、朋友交换函数)。 我在测试课上实施了四法则和 1/2。它编译得很好。我的实施中是否有任何隐藏的错误? 我特别关注存储在复制构造函数中移...
作者:joaerl 提问时间:4/9/2022
如果使用 std::unique_ptr 有一个带有 pimpl 的 c++ 类,并通过声明我自己的析构函数来解决 pimpl 类在标头中不完整的事实(我知道我也可以提供一个自定义删除器,但让我们使用...
作者:3DMage 提问时间:12/13/2022
这个问题在这里已经有答案了: 三/五规则是否适用于继承和虚拟析构函数? (3 个答案) 12个月前关闭。 我一直在学习析构函数、复制构造函数、移动构造函数等。我还学习了关于在基类中将析构函数标记为虚...
作者:Adomas Baliuka 提问时间:12/23/2020
通过接口(C#术语),我的意思是没有数据成员的抽象类。因此,这样的类只指定子类必须实现的协定(一组方法)。我的问题是:如何在现代C++中正确实现这样的类? C++ 核心准则 [1] 鼓励使用没有数据...
作者:Andrea 提问时间:9/6/2021
按照在线教程中关于 5 规则的示例,我编写了以下课程: #include <iostream> #include <cstring> #include <utility> class A2 { c...
作者:lvalue 提问时间:6/22/2022
以此类推 https://en.cppreference.com/w/cpp/language/rule_of_three 它说: 由于存在用户定义的(或 = default 或 = delete ...
作者:Vasilii Rogin 提问时间:4/21/2023
我有一个有自己的资源管理的类: class Lol { private: // This is data which this class allocates char *mName = nu...