问答列表

内存管理:字符数组和 = 运算符

作者: 提问时间:4/23/2013

内存管理:字符数组和 = 运算符 Q.在内存管理方面,以下代码会有什么错误? class String { public: String(const char right[]); String...

具有结构的类中的析构函数问题

作者:J. Doe 提问时间:4/8/2018

我目前在为我的班级编写/使用析构函数时遇到问题。对于 OpenGL 赋值,我必须编写一个数据结构来保存有关模型的所有信息,请参阅下面的实现。这个类包含指向各种结构的指针,我已经学会了在堆上分配内存后正...

不检查 copy assignemt 运算符是否将对象分配给自身真的安全吗?

作者:Maestro 提问时间:12/11/2018

这是我找到的一个实现“三法则”的示例: class Array { public: int size; int* vals; Array() : size(0), vals(NULL)...

c++ 接口必须遵守五法则吗?

作者:user7119460 提问时间:4/22/2018

定义接口类时声明实例化方法的正确方法是什么? 出于显而易见的原因,抽象基类需要具有虚拟析构函数。但是,随后会给出以下编译警告:“'InterfaceClass' 定义了一个非默认的析构函数,但不定义...

三法则变成五法则与C++11?[已结束]

作者:Xeo 提问时间:1/24/2011

已关闭。这个问题是基于意见的。它目前不接受答案。 想改进这个问题吗?更新问题,以便可以通过编辑这篇文章来用事实和引文来回答。 去年关闭。 社区去年审查了是否重新讨论这个问题,并关闭了它: 原始...

了解 -Weffc++

作者:chris 提问时间:7/16/2012

请考虑以下程序: #include <string> struct S { S (){} private: void *ptr = nullptr; std::string str = "...

“零法则”是否也适用于具有虚拟方法的类?

作者:towi 提问时间:2/8/2014

我发现 Peter Sommerlads 幻灯片(第 32 页)中也提到的零法则非常引人注目。 虽然,我似乎记得有一个严格的规则,即如果类具有虚拟成员并且实际上是派生的,则必须定义析构函数虚拟。 ...

零法则如何影响具有隐藏可见性的共享库?

作者:steveire 提问时间:6/30/2021

注意:问题在底部。 我正在尝试了解如果将零规则与共享库和派生类型一起使用时可能出现的问题。 在下面的演示中,是否使用零规则进行编译,具体取决于预处理器的定义。然后,该脚本演示了出现的差异,即,如果...

在 C++ 中定义接口(没有成员的抽象类)

作者:Adomas Baliuka 提问时间:12/23/2020

通过接口(C#术语),我的意思是没有数据成员的抽象类。因此,这样的类只指定子类必须实现的协定(一组方法)。我的问题是:如何在现代C++中正确实现这样的类? C++ 核心准则 [1] 鼓励使用没有数据...

具有继承实现的 C++ 5 法则

作者:Andrea 提问时间:9/6/2021

按照在线教程中关于 5 规则的示例,我编写了以下课程: #include <iostream> #include <cstring> #include <utility> class A2 { c...


共994条 当前第19页