C++ 继承方式 与 普通方式 对比
1 //C++ 继承
2 //继承是面向对象三大特性之一
3
4 #include <iostream>
5 #include <string>
6 using namespace std;
7
8 //普通实现页面***********************************************
9
10 ////Java页面
11 //class Java
12 //{
13 //public:
14 // void header()
15 // {
16 // cout << "首页,公开课,,登录,注册....(公共头部)" << endl;
17 // }
18 // void footer()
19 // {
20 // cout << "帮助中心,交流合作,站内地图...(公共底部)" << endl;
21 // }
22 // void left()
23 // {
24 // cout << "java,python,C++.....(公共类列表)" << endl;
25 // }
26 //
27 // void content()
28 // {
29 // cout << "Java学科视频" << endl;
30 // }
31 //
32 //
33 //};
34 //
35 ////Python
36 //class Python
37 //{
38 //public:
39 // void header()
40 // {
41 // cout << "首页,公开课,,登录,注册....(公共头部)" << endl;
42 // }
43 // void footer()
44 // {
45 // cout << "帮助中心,交流合作,站内地图...(公共底部)" << endl;
46 // }
47 // void left()
48 // {
49 // cout << "java,python,C++.....(公共类列表)" << endl;
50 // }
51 //
52 // void content()
53 // {
54 // cout << "Python学科视频" << endl;
55 // }
56 //
57 //
58 //};
59 //
60 //
61 ////C++
62 //class Cpp
63 //{
64 //public:
65 // void header()
66 // {
67 // cout << "首页,公开课,,登录,注册....(公共头部)" << endl;
68 // }
69 // void footer()
70 // {
71 // cout << "帮助中心,交流合作,站内地图...(公共底部)" << endl;
72 // }
73 // void left()
74 // {
75 // cout << "java,python,C++.....(公共类列表)" << endl;
76 // }
77 //
78 // void content()
79 // {
80 // cout << "C++学科视频" << endl;
81 // }
82 //
83 //
84 //};
85 //void test01()
86 //{
87 // cout << "Java下载视频页面如下:" << endl;
88 // Java ja;
89 // ja.header();
90 // ja.footer();
91 // ja.content();
92 // ja.left();
93 //
94 // cout << "**********************************" << endl;
95 // cout << "Python的下载页面" << endl;
96 // Python py;
97 // py.header();
98 // py.footer();
99 // py.content();
100 // py.left();
101 //
102 // cout << "*************************************" << endl;
103 // cout << "Cpp的下载页面" << endl;
104 // Cpp cpp;
105 // cpp.header();
106 // cpp.footer();
107 // cpp.content();
108 // cpp.left();
109 //}
110 //普通实现页面***********************************************
111
112 //继承实现页面
113
114 //公共页面类
115
116 class BasePage
117 {
118 public:
119 void header()
120 {
121 cout << "首页,公开课,,登录,注册....(公共头部)" << endl;
122 }
123 void footer()
124 {
125 cout << "帮助中心,交流合作,站内地图...(公共底部)" << endl;
126 }
127 void left()
128 {
129 cout << "java,python,C++.....(公共类列表)" << endl;
130 }
131
132 };
133
134 //继承的好处:减少重复代码
135 //语法:class 子类 :继承方式 父类
136 //子类 也称为 派生类
137 //父类 也称为 基类
138
139
140 //Java页面
141 class Java :public BasePage
142 {
143 public:
144 void content()
145 {
146 cout << "Java学科视频 " << endl;
147 }
148 };
149
150 //Python页面
151 class Python :public BasePage
152 {
153 public:
154 void content()
155 {
156 cout << "Python学科视频 " << endl;
157 }
158 };
159
160 //Cpp页面
161 class Cpp : public BasePage
162 {
163 public:
164 void content()
165 {
166 cout << "Cpp学科视频" << endl;
167 }
168 };
169
170 void test02()
171 {
172 cout << "Java下载视频页面如下:" << endl;
173 Java ja;
174 ja.header();
175 ja.footer();
176 ja.content();
177 ja.left();
178
179 cout << "**********************************" << endl;
180 cout << "Python的下载页面" << endl;
181 Python py;
182 py.header();
183 py.footer();
184 py.content();
185 py.left();
186
187 cout << "*************************************" << endl;
188 cout << "Cpp的下载页面" << endl;
189 Cpp cpp;
190 cpp.header();
191 cpp.footer();
192 cpp.content();
193 cpp.left();
194 }
195
196 int main()
197 {
198 //test01();
199 test02();
200 }

C++ 继承方式 与 普通方式 对比的更多相关文章
- js实现继承的5种方式 (笔记)
js实现继承的5种方式 以下 均为 ES5 的写法: js是门灵活的语言,实现一种功能往往有多种做法,ECMAScript没有明确的继承机制,而是通过模仿实现的,根据js语言的本身的特性,js实现继承 ...
- JS几种数组遍历方式以及性能分析对比
前言 这一篇与上一篇 JS几种变量交换方式以及性能分析对比 属于同一个系列,本文继续分析JS中几种常用的数组遍历方式以及各自的性能对比 起由 在上一次分析了JS几种常用变量交换方式以及各自性能后,觉得 ...
- 《JS高程》实现继承的6种方式(完整版)
许多OO语言都支持 两种继承方式: (1)接口继承:只继承方法签名: (2)实现继承:继承实际的方法. ECMAScript 由于函数没有签名,无法实现接口继承,因此只支持实现继承,而且主要是依靠原型 ...
- javascript实现继承的几种方式
原型链方式实现继承 function SuperType(){ this.property = true; this.colors = ['red','blue','green']; } SuperT ...
- javascript(js)创建对象的模式与继承的几种方式
1.js创建对象的几种方式 工厂模式 为什么会产生工厂模式,原因是使用同一个接口创建很多对象,会产生大量的重复代码,为了解决这个问题,产生了工厂模式. function createPerson(na ...
- js实现继承的5种方式
js是门灵活的语言,实现一种功能往往有多种做法,ECMAScript没有明确的继承机制,而是通过模仿实现的,根据js语言的本身的特性,js实现继承有以下通用的几种方式1.使用对象冒充实现继承(该种实现 ...
- js 实现继承的6种方式(逐渐优化)
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...
- JS几种变量交换方式以及性能分析对比
前言 "两个变量之间的值得交换",这是一个经典的话题,现在也有了很多的成熟解决方案,本文主要是列举几种常用的方案,进行大量计算并分析对比. 起由 最近做某个项目时,其中有一个需求是 ...
- js 实现继承的几种方式
//js中实现继承的几种方式 //实现继承首先要有一个父类,先创造一个动物的父类 function Animal(name){ this.name = name; this.shoot = funct ...
- javascript中实现继承的几种方式
javascript中实现继承的几种方式 1.借用构造函数实现继承 function Parent1(){ this.name = "parent1" } function Chi ...
随机推荐
- NUC980 运行 RT-Thread 驱动 SPI 接口 OLED 播放 badapple
badapple 是什么,上网随便查了下,没看出个究竟,不过有个关于这个挺火的标签或者主题 < 有屏幕的地方就有 badapple >,网上有很多人用很多方式播放 badapple 动画, ...
- MySQL基本sql语句总结
目录 约束 表操作 查看表结构与修改表名 修改字段名与字段数据类型 添加与删除字段 修改字段的排列位置 删除表的外键约束 增删改 插入数据 更新数据 删除数据 查询 单表查询 连接查询 子查询 视图 ...
- frp+nginx内网穿透
frp+nginx内网穿透 背景:自己有台内网Linux主机,希望被外网访问(ssh.http.https): 准备工作 内网Linux主机-c,可以访问c主机和外网的主机-s(windows/lin ...
- Zoho Books十年发展历程
十年前,我们推出Zoho Books的时候,是为了全面解决企业面临的财务和会计方面的挑战.我们逐渐地从一开始的易用的中小企业在线会计工具,发展成为现在的解决企业复杂的财务挑战的解决方案,其中经历了很多 ...
- Nginx-多服务绑定80端口及映射域名
多服务绑定80端口及映射域名 说明:业务需要配置的样例模板,如需深入了解,请查看官方文档 1.Nginx配置文件nginx.conf(可拆分多台机器部署) worker_processes 1; e ...
- Docker中容器的备份和恢复(可迁移)
官方文档 备份容器 - save 查看镜像$ docker images 容器快照 - commit$ docker commit CONTAINER xxx/exampleimage-backup: ...
- 在SublimeText3中搭建Verilog开发环境记录(一)
------------恢复内容开始------------ ------------恢复内容开始------------ ## 前言 *工欲善其事,必先利其器* 一款好用的撸码软件,能够大大的提高工 ...
- 如何监控 Log4j2 异步日志遇到写入瓶颈
如何监控 Log4j2 异步日志遇到写入瓶颈 在之前的一篇文章中(一次鞭辟入里的 Log4j2 异步日志输出阻塞问题的定位),我们详细分析了一个经典的 Log4j2 异步日志阻塞问题的定位,主要原因还 ...
- HTML - form表单操作
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- noip模拟23[联·赛·题]
\(noip模拟23\;solutions\) 怎么说呢??这个考试考得是非常的惨烈,一共拿了70分,为啥呢 因为我第一题和第三题爆零了,然后第二题拿到了70分,还是贪心的分数 第一题和第二题我调了好 ...