继承

  • 可在已有类的基础上添加功能
  • 可给类添加数据
  • 可修改类方法的行为

从一个类派生出另一个类时,原始类称为基类,继承类成为派生类

Webtown俱乐部决定跟踪乒乓球会员,设计一个简单的TableTennisPlayer类

tabtenn0.h

#ifndef TABTENN0_H_
#define TABTENN0_H_
#include <string>
using std::string;class TableTennisPlayer
{private:string firstname; // 记录会员的姓名string lastname;bool hasTable; // 是否有球桌
public:TableTennisPlayer (const string & fn = "none",const string & ln = "none", bool ht = false);void Name() const;bool HasTable() const { return hasTable; };void ResetTable(bool v) { hasTable = v };
};
#endif

tabtenn0.cpp

#include "tabtenn0.h"
#include <iostream>
// 将string作为参数时,将调用接受const string&作为参数的string构造函数
TableTennisPlayer::TableTennisPlayer (const string & fn,const string & ln, bool ht) : firstname(fn),lastname(ln), hasTable(ht) {}
//构造函数成员初始化另外一种形式
/*
TableTennisPlayer::TableTennisPlayer (const string & fn,const string & ln, bool ht)
{firstname = fn;lastname = ln;hasTable = ht;
}
*/void TableTennisPlayer::Name() const
{std::cout << lastname << "," << firstname;
}

usett0.cpp

#include <iostream>
#include "tabtenn0.h"int main (void)
{using std::cout;// C-风格字符串作为参数,初始化string对象时,将自动调用构造函数TableTennisPlayer player1("Chuck", "Blizzard", true); // 将调用接受const char* 作为参数的string构造函数TableTennisPlayer player2("Tara", "Boomdea", false); // string类有一个将const char*作为参数的构造函数player1,Name();if (player1,HasTable())cout << ": has a table.\n";elsecout << ": hasn't a table.\n";player2.Name();if (player2.HasTable())cout << ": has a table";elsecout << ": hasn't a table.\n";return 0;
}

输出

Blizzard, Chuck: has a table.
Boomdea, Tara: hasn’t a table.

C++ 一个简单的基类相关推荐

  1. python简单代码演示效果-演示python如何创建和使用一个简单的元类的代码

    在做工程闲暇时间,将做工程过程比较重要的一些内容备份一下,如下内容段是关于演示python如何创建和使用一个简单的元类的内容,应该能对小伙伴们也有用途. #!/usr/bin/env python # ...

  2. boost::mpi模块实现一个简单的点类,我们可以构建、添加、比较和 连载

    boost::mpi模块实现一个简单的点类,我们可以构建.添加.比较和 连载 实现功能 C++实现代码 实现功能 (boost::mpi模块实现一个简单的点类,我们可以构建.添加.比较和 连载 C++ ...

  3. python自己做个定时器_技术图文:如何利用 Python 做一个简单的定时器类?

    原标题:技术图文:如何利用 Python 做一个简单的定时器类? 背景 今天在B站上看有关 Python 最火的一个教学视频 -- "零基础入门学习 Python",这也是我们 P ...

  4. 在Kubernetes上部署一个简单的、类PaaS的平台,原来这么容易!

    作者 | Bram Dingelstad 译者 | 弯月 责编 |徐威龙 封图| CSDN下载于视觉中国 我们都遇到过这种情况:有人发现了一个bug,然而这不是一般的软件bug,甚至都不是通常意义上的 ...

  5. 实验3.2 定义一个简单的Computer类

    题目 定义一个简单的Computer类,有数据成员芯片(cpu).内存(ram).光驱(cdrom)等等,有两个公有成员函数run.stop.cpu为CPU类的一个对象,ram为RAM类的一个对象,c ...

  6. 编写计算正方体、圆柱体、球体的表面积和体积的类。要求: (1)这三个类有一个公共的基类; (2)这三个类计算正方体、圆柱体、球体的表面积和体积的成员函数名字相同; (3)按照运行时的多态性方法设计一个

    本文为博主原创文章,未经博主允许不得转载. 版权为陈博超所有,第一次于2020年11月24日发表于BLOG上 本BLOG上原创文章未经本人许可,不得用于商业用途.转载请经允许后注明出处,否则保留追究法 ...

  7. 定义一个基本的银行账户类。在基本账户类的基础上派生出1年期定期账户、2年期定期账户、3年期定期账户和5年期定期账户。定义一个n个基类指针组成的数组,随机生成n个各类派生类的对象。让每个指针指向一个派生

    定义一个基本的银行账户类.在基本账户类的基础上派生出1年期定期账户.2年期定期账户.3年期定期账户和5年期定期账户.定义一个n个基类指针组成的数组,随机生成n个各类派生类的对象.让每个指针指向一个派生 ...

  8. [转贴]从零开始学C++之STL(二):实现一个简单容器模板类Vec(模仿VC6.0 中 vector 的实现、vector 的容量capacity 增长问题)...

    首先,vector 在VC 2008 中的实现比较复杂,虽然vector 的声明跟VC6.0 是一致的,如下: C++ Code  1 2   template < class _Ty, cla ...

  9. 技术图文:如何利用 Python 做一个简单的定时器类?

    背景 今天在B站上看有关 Python 最火的一个教学视频,零基础入门学习 Python,这也是我们 Python基础刻意练习活动 的推荐视频教程. 在学习魔法方法的时候,有一节视频是制作一个简单的定 ...

最新文章

  1. 来自damon的zencart二次开发教程-3.2复制模板(仿站)操作教程
  2. 终于找全啦!一二线城市知名互联网公司名单!对着找就对了
  3. linux中怎样建立批量用户,Linux 大批量建立用户
  4. windows 2008 R2系统安装拨号v p n详细配置
  5. 轻松搞定 Nginx 配置的好工具!
  6. eclipseEE连接mysql_mysql-eclipseEE连接MySQL出现问题,哪位大神可以帮我看看*^__^*,非常感谢...
  7. Html中 table,list等表格 中 js 的 Checkbox全选,反选,单选,获取数据选中行 的写法
  8. 是不是胖了c语言程序,C语言:到底是不是太胖了
  9. [深度学习基础] 斯坦福CS231n李飞飞计算机视觉Lecture 6笔记
  10. MySQL数据库基础表格——增删改查(下)
  11. matlab中idfs,【 MATLAB 】离散傅里叶变换(DFT)以及逆变换(IDFT)的MATLAB实现
  12. 温州兰博基尼车主遭绑架案1名嫌犯获死刑-兰博基尼-女车主-绑架
  13. 区块链单组群多节点部署
  14. 网站建设凸显效果的配色原则
  15. Cluster analysis :Basic Concepts and Algorithms -- Part 3 Hierarchical Clustering
  16. m苹果放n篮子_算法交流:666苹果放篮子【2.6基本算法之动态规划】-09
  17. python爬去新浪微博_荐爬虫实战 新浪微博爬取 详细分析
  18. Process finished with exit code 135 (interrupted by signal 7: SIGEMT)
  19. 关于抱怨解读,读书笔记
  20. Android网络编程之Http请求服务器数据(GET方式)

热门文章

  1. 3.4_activity_selection_活动选择问题
  2. 用友功能传送错误功能加密服务器组件加密服务器错误拒绝访问,用友U8v8.72单机版,登录时系统提示:不能登录到加密服务器。-用友U8...
  3. ftp 工具_ftp,win7的ftp工具
  4. java 程序打成.exe可执行程序
  5. 转SQLSERVER 会不会自动加锁
  6. SQL调优日记--并行等待的原理和问题排查
  7. Selenium 调用IEDriverServer打开IE浏览器
  8. spring复杂数据类型传递
  9. Java web servers 间是如何实现 session 同步的
  10. 装机 win7 64 IE11