构造函数和析构函数
Posted Elaine
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了构造函数和析构函数相关的知识,希望对你有一定的参考价值。
1>构造函数能否为虚函数?
构造函数不能是虚函数,因为构造函数要是虚函数的话,那么实际执行的是父类的对应的函数,而不执行定义类的函数;
析构函数可以是虚构函数,而且,在一个复杂类的结构中,这往往是必要的,析构函数也可以是纯虚函数,但纯虚函数必须有定义体,因为析构函数的调用是在子类中隐含。
2>简述在子类与父类的析构,构造函数的调用顺序
析构函数的调用顺序是先是基类然后是派生类,构造函数的调用顺序是先是派生类然后是基类。
3>谈谈是拷贝构造函数和赋值运算符的知识?
拷贝构造函数是新生成的类对象,而赋值运算符不是
由于拷贝构造函数是直接构造一个新的类对象,所以在初始化这个类对象之前不用检查源对象是否和新建对象相同,而赋值运算符需要这个操作,另外赋值运算符中如果原来的对象中有内存分配,要先把内存释放。
以上是关于构造函数和析构函数的主要内容,如果未能解决你的问题,请参考以下文章