注册 登录
编程论坛 C++教室

关于继承类构造函数的几点疑问?(内附程序代码)

Iamagays 发布于 2007-07-13 13:26, 676 次点击

#include <iostream.h>
class A
{
public:
A() {cout<<"A Constructor"<<endl;}
~A() {cout<<"A Destructor"<<endl;}
};
class B:public A
{
public:
B() {cout<<"B Constructor"<<endl;}
~B() {cout<<"B Destructor"<<endl;}
};
void main()
{
B b;
}

程序执行的结果是:
A Constructor
B Constructor
B Destructor
A Destructor

我想问一下,派生类B中的(无参)构造函数B()没有定义基类A的构造函数, 但是主函数中定义的派生类B的对象b为什么还

能调用基类A中的(无参)构造函数? 个人感觉应该将派生类B中的(无参)构造函数B()定义为B():A() {cout<<"B

Constructor"<<endl;}


望各位达人指点一二,谢谢.

[此贴子已经被作者于2007-7-13 13:32:35编辑过]

2 回复
#2
anthony6342007-07-13 14:15
是的,所以编译帮你省略了那部
#3
Iamagays2007-07-13 18:18
原来是省略了定义

多谢版主
1