社区
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的重载构造函数进行初始化?
不知道我的表述是否清晰。
...全文
348
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++复习题及答案期末备考复习之用
6. **继承与多态**:掌握单一继承和多重继承,理解派生类和基类的关系,以及虚函数和纯虚函数在实现多态性中的角色。 7. **模板**:学习函数模板和类模板,它们提供了一种代码复用的机制,使代码更具通用性。 8. *...
C++工资管理系统样本.doc
在设计过程中可能会遇到对C++特性的理解不足,通过查阅资料和
请教
他人得以解决。 程序源代码示例展示了employee类的定义,包含姓名、ID、工资级别、月薪、基本月薪和业绩工资等属性,以及构造函数、析构函数和相关...
itcaststore.zip
Servlet通过继承`javax.servlet.http.HttpServlet`基类并重写`doGet`和`doPost`方法来响应HTTP请求。而JSP(JavaServer Pages)则作为视图,与Servlet配合实现MVC架构。JSP页面可以包含HTML、CSS、JavaScript以及...
C++多态机制详解(多态实现原理,单继承和
多继承
时虚函数表,菱形继承时的虚函数表原理)
动态多态:用一个基类对象的引用或者指针去调用重写完成的虚函数,更具引用或指向的对象不同,出现不同的行为静态:是指在编译阶段实现动态:是指在程序运行阶段实现被virtual修饰的函数就是虚函数public:这里的func...
虚析构函数
问题
:为什么要将基类的的析构函数设成虚的?
...因此,得到结论就是,只要能够保证继承关系中最高的基类的析构函数是虚的,那么就不会产生前面所谈及的
问题
。这就是为什么在想使用多态特性的时候,需要将基类的析构函数设成虚的真正原因
C++ 语言
65,198
社区成员
250,522
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章