社区
C++ 语言
帖子详情
请教:多继承的虚基类问题
jzp12
2007-04-21 12:05:40
问题描述如下:
A->B, A派生出B
A->C, A派生出C
(B,C)->D, B和C派生出D
A是虚基类,A、B和C都没有写出默认的构造函数,重载了A、B和C的构造函数(都仅一个),那么在写D的构造函数时是否要对A的重载构造函数进行初始化?
是否同时需要对B和C的重载构造函数进行初始化?
不知道我的表述是否清晰。
...全文
338
4
打赏
收藏
请教:多继承的虚基类问题
问题描述如下: A->B, A派生出B A->C, A派生出C (B,C)->D, B和C派生出D A是虚基类,A、B和C都没有写出默认的构造函数,重载了A、B和C的构造函数(都仅一个),那么在写D的构造函数时是否要对A的重载构造函数进行初始化? 是否同时需要对B和C的重载构造函数进行初始化? 不知道我的表述是否清晰。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jzp12
2007-04-21
打赏
举报
回复
to msgsnd:
May be you misunderstand my presentation
to plo2168424:
我忘记提一点:我的虚基类,同时也是抽象类,所以A是不能实例化的.
还有谁有高见?
我写这个程序的意图在于希望这个程序可以尽可能多的C++基础知识,如:
纯虚函数,虚基类,动态空间分配,重载,多继承,多层继承...等
plo2168424
2007-04-21
打赏
举报
回复
没式过 可能要出错
最好把默认构造函数写起~
要不把A B C初始下~
msgsnd
2007-04-21
打赏
举报
回复
#include<iostream.h>
class complex
{
double real; //?场
double imag; //?场
public:
complex();
complex(double r, double i);
void addCom(complex &c); //?衡?蝋?ぇ㎝
void outCom ( ); //?蝋???禜?场㎝?场
};
complex::complex()
{
real=0;imag=0;
}
complex::complex(double r, double i)
{
real=r;imag=i;
}
void complex::addCom(complex &c)
{
real=c.real+real;
imag=c.imag+imag;
}
void complex::outCom()
{
cout<<"("<<real<<","<<imag<<")"<<'\n';
}
void main()
{
complex c1(1,2),c2(3,4),c3;
c3.outCom();
c3.addCom(c1);
c3.addCom(c2);
c3.outCom();
}
xlbdan
2007-04-21
打赏
举报
回复
如果A没有写任何构造函数的话,D不用管它的。
当然如果A写了任何一个构造函数,D都要直接对它负责传参
这时B和C对A的构造函数的传参就被抑制了。
D当然也需要对B和C的构造函数传参
C++复习题及答案期末备考复习之用
C++复习题及答,期末复习,供大家期末备考复习之用
C++工资管理系统样本.doc
C++工资管理系统样本.doc
itcaststore.zip
javaweb项目
C++多态机制详解(多态实现原理,单继承和
多继承
时虚函数表,菱形继承时的虚函数表原理)
多态就是多种形态。就是不同对象在完成同一种行为的时候结果不同。一种情况是不同的对象,调用同一个函数,但是出现了不同的结果。1.静态多态:函数重载(看起来调用的是一个函数但是传递不同的参数有不同的行为,比如cout的自动识别类型)2.动态多态:用一个基类对象的引用或者指针去调用重写完成的虚函数,更具引用或指向的对象不同,出现不同的行为静态:是指在编译阶段实现动态:是指在程序运行阶段实现被virtual修饰的函数就是虚函数public:这里的func1就是虚函数。
虚析构函数
问题
:为什么要将基类的的析构函数设成虚的?
某CSDN网友问: class A { public: ~A() { cout } }; class B:public A { public: virtual ~B() { cout } }; class C:public B { public: ~C
C++ 语言
65,186
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章