基类构造函数 C 派生类的构造函数怎么定义?包括单继承和多继承的格式?
C 派生类的构造函数怎么定义?包括单继承和多继承的格式?
例如:
class base1{
int x
public:
base1(int a){x=a}]}
//单继承
class derived 1:public base1{
int a
public:
derived 1(int m,int n):base1(m){//依次调用基类的构造函数,然后是派生类的构造函数
a=n
}
!]类base2{
int t
public:
base2(int p){t=p}
!//多重继承
类派生2:类派生1 public base1,公共base2{
int k
public:
派生2(int x,int y,int z):base1(x),base2(y){//依次调用基类构造函数,用逗号分隔,结尾不带分号
k=Z
}
C 派生类的构造函数定义?
是的,构造函数不是可调用函数,它们在创建时只用于自己类的对象的成员初始化,所以只服务于这个类的对象。如果基类的构造函数是无参数的(默认构造函数),则不需要定义派生类。但是,如果基类的构造函数有参数,并且在定义时无法确定派生类,即参数来自应用环境,则派生类需要编写相应的参数构造函数,并将参数传递给基类的初始化;如果基类的构造函数中的参数可以由派生类确定,那么常量将在派生类的非参数构造函数中定义,并传递给基类初始化。你好,我是小梦。我很高兴为你回答。必须执行。子类继承父类的成员。事实上,所有成员都是继承的,只有访问控制。然后我们需要调用父类的构造函数来初始化这些成员,以确保子类成员的完整性。我们可以指定要调用哪个父类的构造函数。如果不是,则默认情况下将调用父类的非参数构造函数。Public a:B{Public a():base(){}}我们添加:base()来指定调用哪个父类构造函数来初始化子类中包含的父类成员。比较专业的理科知识,欢迎关注我。如果你喜欢我的回答,也请给我表扬或转发,你的鼓励是支持我写下来的动力,谢谢。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。