构造函数(拷贝、默认、自定义)和析构函数

本文详细介绍了C++中的构造函数和析构函数,包括它们的调用顺序、作用时间、以及默认和自定义的情况。构造函数在对象创建时调用,用于初始化,而析构函数在对象销毁前执行,负责清理工作。还讨论了默认构造函数的自动分配条件、初始化列表的使用以及拷贝构造函数和赋值函数的概念。
摘要由CSDN通过智能技术生成

class a
{
   
public:
    a()//初始化列表
    {
   
        //初始化
    }
    ~a()
    {
   
       //收拾一下
    }
};

构造函数

类实例化成为对象时就调用

与类同名

我与系统有个约定,我和类要同名

没有返回值

本身就不需要,就算有返回值也不会返回给你,应该给系统
没有返回值就是没有,不是void

有参数,可以重载

可以有多个

调用顺序
复用情况
  • 组合(嵌套)
    外层的构造函数晚于内层构造函数被调用
  • 继承
    //学到继承再补
时空情况
  • 空间
    堆空间(生命周期由程序员决定)
    栈空间(当前作用域内)
    全局空间(跟程序一样,与天地兮比寿,与日月兮同光)
  • 时间
    文本顺序

析构函数

对象销毁的时候调用

~类名
没有返回值
没有参数,不能重载

只有一个

调用顺序

跟构造函数调用顺序完全相反

构造函数和析构函数的作用时间

对象空间的分配与释放是系统干的事,与构造函数和析构函数无关。
但是对象空

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值