请问一道继承和构造函数析构函数的题

运行结果如图
1.构造函数后的冒号是赋值的意思吗,怎么赋值的
2.因为class s:public m,并没有继承n这个类,为什么运行出来显示的是继承了n类
谢谢解答

img

img

1.x(a)相当于x = a;
2.n r;请看这里 r是n类型的 所以会走n的构造函数
你只需要知道构造和析构函数的顺序即可,他们是相反的

1、括号使用初始化参数列表进行赋值,相当于赋值
2、因为s里面有一个成员变量n的对象,初始化时会调用n类的构造函数

谢谢采纳,关注一波多多支持!