C++中,建立子类对象的时候,会调用基类的构造函数,
3个回答
展开全部
派生类的对象中包含了基类的对象。例外是存在“空基类优化”(empty base optimization)的场合,此时基类对象不占内存,不过只有基类对象没有数据成员(“为空”)的时候才有空基类优化,所以这没有什么影响。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
会调用基类的构造函数,内存中的对象应该看作一层包一层的形象,推荐一本书和这个问题相关的深度探索C++对象模型例子如下,在最后return处打断点
#include <iostream>
using namespace std;
class A
{
public:
A(){ cout<<"A()"<<endl;}
~A(){cout<<"~A()"<<endl;}
};
class B:public A
{
public:
B(){ cout<<"B()"<<endl;}
~B(){cout<<"~B()"<<endl;}
};
int main()
{
A a;
B b;//构造和析构,B和A都涉及到了
return 0;//这一行打断点,debug
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
为父类对象分配了内存,其有两个对象
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询