定义Person类,由Person分别派生出Teacher类和Cadre(干部)类。要求如下:
(1)数据成员:
1、在Person类中包含的数据成员有姓名(name)、年龄(age)、性别(sex)。
2、在Teacher类中包含数据成员职称(title)。
3、在Cadre类中包含数据成员职务(post)、工资(wages)。
(2)成员函数:
1、在类体中定义成员函数(根据实际情况包含构造、析构函数)
2、每个类都有显示信息函数(Show)
(3)主函数测试:
主函数中分别定义Person类、 Teacher类、 Cadre(干部)类的对象,预计并使用sizeof验证各对象的大小,调用成员函数。

#include <iostream>
#include <cstring>
#include <stdlib.h>
using namespace std;
//person类定义
class Person
{//数据成员
protected:
char name[10];
int age;
char sex[10];
public://构造函数Person(char pname[]="",int page=0,char psex[]=""){strcpy(name,pname);age=page;strcpy(sex,psex);}//show函数void show() const{cout<<"姓名:"<<name<<endl;cout<<"年龄:"<<age<<endl;cout<<"性别:"<<sex<<endl;}
};
//定义Teacher类
class Teacher:public Person
{//新增数据成员
protected:
char title[10];public://构造函数Teacher(char tname[]="",int tage=0,char tsex[]="",char *ttitle=""):Person(tname,tage,tsex){strcpy(title,ttitle);}//新增show函数void show() const{cout<<"姓名:"<<name<<endl;cout<<"年龄:"<<age<<endl;cout<<"性别:"<<sex<<endl;cout<<"职称:"<<title<<endl;}
};
//定义Cadre类
class Cadre:public Person
{//新增数据成员
protected:
char post[20];
int wages;
public://构造函数Cadre(char cname[]="",int cage=0,char csex[]="",char *cpost="",int cwages=0):Person(cname,cage,csex){strcpy(post,cpost);wages=cwages;}//新增show函数void show() const{cout<<"姓名:"<<name<<endl;cout<<"年龄:"<<age<<endl;cout<<"性别:"<<sex<<endl;cout<<"职务:"<<post<<endl;cout<<"工资:"<<wages<<endl;}
};
int main()
{Teacher t("王五",35,"男","副教授");Cadre c("张姗",27,"女","计算机教师",5000);t.show();c.show();return 0;
}

C++Person类继承相关推荐

  1. C++ 笔记(31)— 类继承

    1. 私有和保护 成员函数或成员数据可以是公有或者私有的.如果是公有的,那么它们可以被直接访问:如果是私有的,那么它们无法被直接访问.同时,还有一个 protected 保留字,在没有使用继承的时候, ...

  2. Python 精选笔试面试习题—类继承、方法对象、包管理、闭包、可变类型作为默认参数、列表引用、sort与sorted、 append 和 extend、深拷贝和浅拷贝

    1. 类继承 如下代码 class A(object):def show(self):print 'This is calss A'class B(A):def show(self):print 'T ...

  3. Python面向对象编程:类继承和其衍生术语

    Python面向对象编程03:类继承和其衍生术语 前面我们讲到过正则表达式字符等,上一篇分享了面向对象编程和类的结构,最后稍微提到了继承. Python面向对象编程:深度认识类class_ Pytho ...

  4. Python 学习笔记13 类 - 继承

    我们在编程的过程中,并非都是要重头开始.比如其他人已经有现成的类,我们可以使用其他找人编写的类.术语称之为: 继承. 当一个类继承例外一个类时,它可以获得这个类的所有属性和方法:原有的类称之为 父类, ...

  5. C++基础——类继承

    一.前言  好吧,本系列博客已经变成了<C++ Primer Plus>的读书笔记,尴尬.在使用C语言时,多通过添加库函数的方式实现代码重用,但有一个弊端就是原来写好的代码并不完全适用于现 ...

  6. C++知识点49——类继承与类的构造、拷贝、operator=和析构函数

    一.类继承与构造函数 在C++中,无论类是否有继承关系,每个类各自控制它自己的成员的初始化.子类虽然含有基类的成员,但是并不能对基类的成员直接初始化,需要使用基类的构造函数初始化子类中的基类部分. 从 ...

  7. PHP类继承、接口继承关系概述

    PHP类继承: PHP类不支持多继承,也就是子类只能继承一个父类,但是支持多层次继承,比如: 1 class frist{ 2 public function __construct(){ 3 ech ...

  8. 【Kotlin】Kotlin 类的继承 一 ( 类继承基本方式 | final 关键字 | 子类主构造函数 | 子类次构造函数 )

    文章目录 I . 类继承基本方式 II . 使用 final 禁止类继承 / 方法重写 III . 父类没有主构造函数 IV . 父类有主构造函数 V . 父类构造函数与子类构造函数总结 I . 类继 ...

  9. C++语言之一个派生类继承了所有的基类方法,但下列情况除外

    一个派生类继承了所有的基类方法,但下列情况除外: 基类的构造函数.析构函数和拷贝构造函数. 基类的重载运算符. 基类的友元函数.

  10. C# 使用new 关键字显式隐藏从基类继承的成员和内部类的使用

    在 C# 中,new 关键字可用作运算符.修饰符或约束. 1)new 运算符:用于创建对象和调用构造函数. 2)new 修饰符:在用作修饰符时,new 关键字可以显式隐藏从基类继承的成员. 3)new ...

最新文章

  1. 基于光照的物理模型(一)
  2. http://www.huihoo.com/ 灰狐网站 Linux 专业网站
  3. python手把手入门_新手必看:手把手教你入门 Python
  4. java后台处理ajax请求_java后台怎么对ajax请求的内容进行xss转义?
  5. phpcmsV9 公告内容(图片不显示问题)
  6. 火爆的大数据被什么拖了后腿
  7. 【渝粤题库】陕西师范大学180213《消费经济学》作业 (高起本)
  8. CCS安装多版本编译器 Compiler version__更新手动下载、安装方法
  9. 虚拟机安装win10 64/32bit系统
  10. [Linux]正则表达式和grep使用
  11. 【理解】特征值分解,理解+计算方法+代码+应用
  12. php pdo 遍历,PHP PDO操作总结
  13. 中国集成灶10大品牌排行榜揭晓,公认的集成灶10大品牌是哪几个?
  14. 开源PLM软件Aras详解一 安装
  15. SWF文件加密器 V9.0
  16. 英语语法的介词省略现象
  17. 沉迷java_Java程序员迷恋游戏不可取
  18. Linux下GA-945GZM-S2网卡驱动安装
  19. 自学AE AK大神笔记022_墨水飞溅效果
  20. CAD、PDM、ERP集成系统的功能级实施

热门文章

  1. 「Feign-Http」 Feign请求http接口
  2. commvault oracle 手册,CommVault配置操作手册.doc
  3. 中国人民大学于坤教授:以社会支持体系提升就业力 | 牛客大咖说
  4. Java如何正确的使用try catch finally关闭文件流的总结
  5. 数仓知识12:PostgreSQL预写日志(WAL)和逻辑解码方案
  6. Spring Cloud Gateway配置熔断CircuitBreaker
  7. 估值调整 - Quanto 调整
  8. 使用CASE WHEN语法如何对Null值进行判断
  9. S03_CH02_AXI_DMA PL发送数据到PS
  10. jq实现点击一个按钮,触发另一个点击事件(点击按钮触发另一个按钮的点击事件)