请教一个基本语法问题,不用计算。会基本知识就会
时间:2011-12-27
来源:互联网
C/C++ code
Worker类是一个纯基类,这条代码:Waiter(const Worker & s, int n):Worker(s),banache(n){}
是不是要用Worker的复制构造函数然后在把临时对象复制给Waiter的基类部分
请问是不是这样的。请详细回答啊
#ifndef WORKERMI_H_ #define WORKERMI_H_ #include <string> class Worker { private: std::string fullname; long id; protected: virtual void date()const; virtual void get(); public: Worker():fullname("no name",),id(0L){} Worker(const std::string & s, long n):fullname(s), ld(n){} virtual Worker~(){} = 0; virtual void set() = 0; virtual void show() = 0; }; class Waiter:virtual public Worker { private: int banache; protected: virtual void date()const; virtual void get(); public: Waiter():Worker(),banache(0){} Waiter(const std::string & s, long n, int i):Worker(s,n),banache(0){} Waiter(const Worker & s, int n):Worker(s),banache(n){} virtual ~Waiter(){} virtual void set()const; virtual void show(); };
Worker类是一个纯基类,这条代码:Waiter(const Worker & s, int n):Worker(s),banache(n){}
是不是要用Worker的复制构造函数然后在把临时对象复制给Waiter的基类部分
请问是不是这样的。请详细回答啊
作者: zjxzjx54 发布时间: 2011-12-27
恩,构造子类时要先构造基类部分
作者: yafeng_jiang 发布时间: 2011-12-27
那个是构造函数的初始化列表,用来初始化它的基类成员。构造函数在执行初始化列表的时候进行的是定义(分配内存空间的操作),而进入大括号内之后就完成了定义,再调用构造函数就没用了,只能赋值。
作者: johnpher 发布时间: 2011-12-27
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28