美文网首页
c++构造函数,析构函数,调用顺序

c++构造函数,析构函数,调用顺序

作者: 死亡中走出来 | 来源:发表于2021-04-02 22:46 被阅读0次

最近,在看c++,聊一个简单的话题吧。构造函数,析构函数,及调用顺序。

构造函数,

class Base {
public:
  Base(){} //构造函数
  Base(int i) { } //带参数构造函数
  virtual ~Base(){} //析构函数
private:
    int m_baseI;
}

构造函数,析构函数,如上代码所示。

再写一个子类,来表示下吧。

class Derived : public Base {
public:
    Derived(){}
    Derived(int i){}
    ~Derived(){}
private:
   int m_derivedI;
}

这么看,还清晰吗?只不过是个简简单单的继承关系而已。就引入了一些概念。比如继承,虚函数,等等。再想下调用顺序,还能理清吗?

//.... #include<XXX.h>
int main() {
    Derived de;
    return 0;
}

看下,这行代码的调用过程,还好!
以下就是构造函数和析构函数的调用过程,如下图


QQ截图20210402224147.png

很简单吧!对,就是这么简单!那其他问题呢?比如,Base类占多少字节,Derived类呢?好了,不是本节的内容,期待下次再聊!

相关文章

  • c++构造函数,析构函数,调用顺序

    最近,在看c++,聊一个简单的话题吧。构造函数,析构函数,及调用顺序。 构造函数, 构造函数,析构函数,如上代码所...

  • 2002.C++BASE-构造函数、析构函数

    转:C++继承中构造函数、析构函数调用顺序及虚析构函数 1.构造函数 大家都知道构造函数里就可以调用成员变量,而继...

  • [C++之旅] 13 析构函数

    [C++之旅] 13 析构函数 析构函数与构造函数相反,构造函数在实例化一个对象时调用,而析构函数在销毁一个对象时...

  • Python:重载构造方法

    对于使用过C++的人来说,构造函数与析构函数不会陌生。构造函数在对象创建时被调用,析构函数在对象被销毁时被调用。而...

  • c++面向对象-构造、析构、初始化列表

    构造函数 构造函数是指创建对象的时候,会调用的函数。C++构造函数可以重载,指针或者对象均可调用构造函数。 析构函...

  • 简介python中的析构函数与构造函数

    python的构造和析构函数为固定的名字。 构造函数 析构函数 不像c++中那样构造函数和析构函数是类名字。并且在...

  • C++中对象构造顺序

    单个对象的构造与析构 单个对象创建时构造函数的调用顺序1、调用父类的构造过程2、调用成员变量的构造函数(调用顺序与...

  • g2o CurveFittingEdge

    构造函数与析构函数:C++大括号{}有作用于,在作用域范围结束时,调用结构体的析构函数,构造函数是与类同名人那个函...

  • Effective C++笔记

    2.构造/析构/赋值运算 条款05:了解C++默默编写并调用哪些函数 默认构造函数和析构函数主要是给编译器一个地方...

  • C++-02、命名空间、构造函数、析构函数

    命名空间 构造函数、析构函数 Java/KT的所谓的析构函数 new/delete 是一套 会调用构造函数 与 ...

网友评论

      本文标题:c++构造函数,析构函数,调用顺序

      本文链接:https://www.haomeiwen.com/subject/zevqkltx.html