C++:带内嵌对象成员的派生类的构造函数,析构函数的声明方式与执行的先后顺序 |
您所在的位置:网站首页 › c++中构造函数的调用顺序 › C++:带内嵌对象成员的派生类的构造函数,析构函数的声明方式与执行的先后顺序 |
声明了某个带内嵌对象成员的派生类的对象并进行初始化时,我们要使用到派生类的构造函数,在这时,派生类的构造函数会调用内嵌对象、父类(基类)的构造函数,那么,这些构造函数的执行顺序是什么呢? 我们知道,被继承的类可以被叫做父类或基类,因此它作为构造派生类的基础,应该在调用构造函数时具有最高的优先顺序,紧接着是内嵌的对象成员,最后才是派生类自己的构造函数。当一个派生类具有多个父类(基类),多个内嵌对象成员时,在调用构造函数时始终遵循:父类构造函数>内嵌对象构造函数,然后再根据其在声明派生类时出现的先后顺序来执行。 对于析构函数的调用顺序,就记住与构造函数调用的顺序相反即可。 下面来看个程序示例: #include #include using namespace std; class A { protected: int a; float b; public: A(int a1,int b1) { a = a1; b = b1; cout |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |