关闭

C++学习体会--构造函数,析构函数,拷贝构造函数

992人阅读 评论(0) 收藏 举报

1.构造函数

确保对象的初始化,

    构造函数不能被继承,因此,在定义派生类的构造函数时除了对自己的数据成员进行初始化外,还必须负责调用基类结构函数,使基类的数据成员使以初始化。派生类构造函数的调用顺序:基类的构造函数、子对象类的构造函数、派生类构造函数。

2.析构函数

确保对象的清除

  析构函数也不能被继承,在执行派生类的析构函数时,基类的析构函数也将被调用。执行顺序是先执行派生类的析构函数,再执行基类的析构函数,与构造函数的执行顺序相反

   当对象超出它的定义范围时,编译器自动调用析构函数。在对象的定义点处构造函数被调用,但析构函数调用的唯一根据是包含该对象的右括号

     程序中不能直接调用构造函数,析构函数,只能在创建对象时系统自动调用.动态分配的对象当使用new为对象分配内存时会调用构造函数,使用delete删除对象时会调用析构函数.析构函数可以是虚函数,构造函数不能是虚函数.

3.拷贝构造函数


     拷贝构造函数就是用已存在的对象来初始化另一个对象。

   当类的数据成员中存在指针成员的时候,要自己定义它,因为编译器往往采用位拷贝,一个内存块一位一位的复制过去,造成多个对象的指针成员都指向同一块内存区域


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:43542次
    • 积分:637
    • 等级:
    • 排名:千里之外
    • 原创:20篇
    • 转载:6篇
    • 译文:0篇
    • 评论:1条