请问C++中一个构造函数后面加个冒号是什么意思

2024-12-12 00:26:51
推荐回答(4个)
回答1:

A(b)实际上是做的是用b初始化A的成员x;既x=b;

:是初始化列表方式,建议你李御看看相拦差关章节再来理解.
B1(int a=0,int b=0):A(b) //就是这句
{ y1=a; }
其实可以简扰皮写成:
B1(int a=0,int b=0):A(b),y1(a){}这就是初始化列表方式,你要是这都没弄懂,就到继承了,那肯定更不好理解!

回答2:

当类继承的时候,其实是没有继承类的构造拿嫌函数的,所以在对派生类中必扮敏派须对基类进行初始化,而这个初始化必须是以初始化列表的厅贺形式初始化。

回答3:

初始化列表,跟在{}里面的颤渣初始化没有什么不同,但在非静态const类型以及引用型成员变量必须在初始化列表里面友洞宏初始化,不能在{}里面初始化.A(b)就是用父类的构好册造函数进行一部分初始化.

回答4:

表示类之间的继承关系,即 class B1 继承了class A 的所有成员和操作函数