在 c++ 中在析构函数中调用 delete[]
作者:Aagman 提问时间:12/20/2017
我对下面的代码有疑问,析构函数内部有一个析构函数,我只是想知道此删除是否有任何堆栈过流,这可能是递归调用析构函数的结果。delete line[] class Line { public: cha...
构函数 问答列表
作者:Aagman 提问时间:12/20/2017
我对下面的代码有疑问,析构函数内部有一个析构函数,我只是想知道此删除是否有任何堆栈过流,这可能是递归调用析构函数的结果。delete line[] class Line { public: cha...
作者:Dax Durax 提问时间:3/30/2013
由于缺少析构函数,我最近遇到了一些错误(bad_alloc)。 我目前有两个类,以这种方式设置: class ObjOne { friend class ObjTwo; public: //con...
作者:user_185051 提问时间:9/8/2020
如果我有一个班级,成员是这样的: class MyClass { public: void set_my_vector() { for (int ind = 0; ind < 3; ++ind)...
作者:J. Doe 提问时间:4/8/2018
我目前在为我的班级编写/使用析构函数时遇到问题。对于 OpenGL 赋值,我必须编写一个数据结构来保存有关模型的所有信息,请参阅下面的实现。这个类包含指向各种结构的指针,我已经学会了在堆上分配内存后正...
作者:Polly 提问时间:11/24/2020
我在程序的最后遇到了这个运行时异常,只需创建指定类的实例,所以我认为问题出在构造函数、复制构造函数、复制赋值运算符或析构函数上。在我有限的 cpp 知识范围内,我已经阅读并遵循了三法则。 Sourc...
作者:user7119460 提问时间:4/22/2018
定义接口类时声明实例化方法的正确方法是什么? 出于显而易见的原因,抽象基类需要具有虚拟析构函数。但是,随后会给出以下编译警告:“'InterfaceClass' 定义了一个非默认的析构函数,但不定义...
作者:Asif Shaikh 提问时间:5/22/2022
以下代码: #include <iostream> #include <string> using namespace std; void print(string a) { cout << a ...
作者:Nikesh Subedi 提问时间:9/7/2022
我有以下程序,我在其中测试构造函数和析构函数调用的顺序,我对输出感到惊讶。 #include <iostream> #include <utility> class Doctor { publ...
作者:towi 提问时间:2/8/2014
我发现 Peter Sommerlads 幻灯片(第 32 页)中也提到的零法则非常引人注目。 虽然,我似乎记得有一个严格的规则,即如果类具有虚拟成员并且实际上是派生的,则必须定义析构函数虚拟。 ...
作者:Joker_vD 提问时间:2/14/2014
前几天,我和我的一个朋友就对象分配和构造进行了一次对话,他指出,对象的分配(在语义上)等同于摧毁它,然后从(在同一个地方)重新构造它。a = bab 但是,当然,没有人(我认为)像这样编写赋值运算符...