哪位C++高手帮帮忙?帮我看看下面这道题 由于我的C++水平很低,所以希望是详解答案 谢谢了。

#include<iostream>usingnamespacestd;classBase{public:Base(intx=0){cout<<x;}};classDer... #include <iostream>
using namespace std;
class Base{
public:
Base(int x=0) {cout<<x;}
};
class Derived : public Base{
public:
Derived(int x=0) {cout<<x;}
private:
Base val;
};
int main(){
Derived d(1);
return 0;
}
展开
 我来答
ACTIONCHYME
2011-09-09 · 超过12用户采纳过TA的回答
知道答主
回答量:34
采纳率:0%
帮助的人:29.4万
展开全部
结果:001
Derived 继承Base,Derived d(1)先调用基类的构造函数,输出一个0,由于基类有一个 Base val的对象,又一次调用基类的构造函数,输出第二个0,最后调用 Derived(int x=0) {cout<<x;},输出1
继承关系的构造函数的调用顺序:先调用基类构造函数-》再调用派生类;析构函数则相反
更多追问追答
追问
Base val是在派生类终生定义的也可以吗? 还有基类的构造函数(函数体)是什么呀?
谢谢了
追答
可以定义的,基类的构造函数(函数体)就是Base(int x=0) {cout<<x;}
tangrong2
2011-09-09 · TA获得超过768个赞
知道小有建树答主
回答量:540
采纳率:100%
帮助的人:306万
展开全部
继承类的构造函数没有为基类的构造函数传递初始值。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式