// Lib13.cpp : 定义控制台应用程序的入口点。

//

#include "stdafx.h"

#include

#include

#include

using namespace std;

class employee

{

protected:

int number;

char*name;

double sumPay;

static int employeeNo;

public:

employee();

~employee();

virtual void pay()=0;

virtual void displayStatus();

};

class technician:public employee

{

protected:

float hourlyRate;

int workHours;

public:

technician();

void pay();

void displayStatus();

};

class salesman:virtual public employee

{

protected:

double CommRate;

double sales;

public:

salesman();

void pay();

void displayStatus();

};

class manager:virtual public employee

{

protected:

float monthlyPay;

public:

manager();

void pay();

void displayStatus();

};

class salesmanager:virtual public employee

{

public:

salesmanager();

void pay();

void displayStatus();

};

int employee::employeeNo=1000;

employee::employee()

{

char str[20];cout<

cin>>str;

name=new char[strlen(str)+1];

strcpy(name,str);

number=employeeNo++;

sumPay=0.0;

}

employee::~employee()

{

delete[]name;

}

void employee::displayStatus()

{

cout<

}

technician::technician()

{

hourlyRate=100;

}

void technician::pay()

{

cout<

cin>>workHours;

sumPay=hourlyRate*workHours;

}

void technician::displayStatus()

{

cout<

employee::displayStatus();

}

salesman::salesman()

{

CommRate=0.04;

}

void salesman::pay()

{

cout<

cin>>sales;

sumPay=sales*CommRate;

}

void salesman::displayStatus()

{

cout<

employee::displayStatus();

}

manager::manager()

{

monthlyPay=8000;

}

void manager:pay()

{

sumPay=monthlyPay;

}

void manager:displayStatus()

{

cout<

employee::displayStatus();

}

salesmanager::salesmanager()

{

monthlyPay=5000;

CommRate=0.05;

}

void salesmanager:pay()

{

cout<

cin>>sales;

sumPay=monthlyPay+sales*CommRate;

}

void salesmanager:displayStatus()

{

cout<

employee::displayStatus();

}

int _tmain(int argc, _TCHAR* argv[])

{

manager m1;

technician t1;

t1.pay();

t1.displayStatus();

salesman s1;

s1.pay();

s1.displayStatus();

salesmanager sm1;

sm1.pay();

sm1.displayStatus();

cout<

employee *ptr[4]={&m1,&t1,&s1,&sm1};

for(int i=0;i<4;i++)

{

ptr[i]->displayStatus();

}

return 0;

}

c语言错误 应输入声明,C++错误:应输入声明相关推荐

  1. helloworld.java:1: 错误: 类HelloWorld是公共的, 应在名为 HelloWorld.java 的文件中声明 public class HelloWorld

    在cmd命令行中,使用javac编译时(javac helloworld.java),出现这样的提示错误: helloworld.java:1: 错误: 类HelloWorld是公共的, 应在名为 H ...

  2. java 高级holleword_HelloWord.java:1: 错误: 类Helloworld是公共的, 应在名为 HelloWorld.java 的文件中声明...

    文件名helloWorld.java 源码: public class Helloworld { public static void main(String[] args) { System.out ...

  3. C语言初学者代码中的常见错误与瑕疵(9)

    题目 字母的个数 现在给你一个由小写字母组成字符串,要你找出字符串中出现次数最多的字母,如果出现次数最多字母有多个那么输出最小的那个. 输入:第一行输入一个正整数T(0<T<25) 随后T ...

  4. 为什么c语言加法错误,分数的加减法——C语言初学者代码中的常见错误与瑕疵(12)...

    重构 题目的修正 我抛弃了原题中"其中a, b, c, d是一个0-9的整数"这样的前提条件,因为这种限制毫无必要.只假设a, b, c, d是十进制整数形式的字符序列. 我也不清 ...

  5. c语言编程格式缺少语句,17个C语言新手编程时常犯的错误及解决方式

    EDA365欢迎您登录! 您需要 登录 才可以下载或查看,没有帐号?注册 x 本帖最后由 lifree 于 2019-12-3 15:38 编辑7 |5 i' _3 D- x" M/ O ) ...

  6. Android开发中应避免的重大错误

    by Varun Barad 由Varun Barad Android开发中应避免的重大错误 (Critical mistakes to avoid in Android development) A ...

  7. vdcode C语言不能弹出运行窗口_C语言编程常见问题分析,以及错误解决办法!

    遇到错误怎么办 在遇到错误的时候不要慌,首先看报错,中文直接看,英文翻译看.根据报错找到错误发生的行数,一般错误就在这一行的上下几行代码.不要偷懒遇到问题马上问别人是对自己的不负责,成长是需要经历困难 ...

  8. c语言一个数中是否含有8,要心中有“数”——C语言初学者代码中的常见错误与瑕疵(8)...

    在 飞鸟_Asuka网友指出"是不是时间复杂度比较大",并说他"第一眼看到我就想把它当成一个数学问题来做"之后,我又重新对问题进行了数学式的思考后发现的. 这个 ...

  9. c语言间接级别不同_一个超复杂的间接递归——C语言初学者代码中的常见错误与瑕疵(6)...

    问题: 在该文的最后,曾提到完成的代码还有进一步改进的余地.本文完成了这个改进.所以本文讨论的并不是初学者代码中的常见错误与瑕疵,而是对我自己代码的改进和优化.标题只是为了保持系列的连续性. 改进 程 ...

  10. C语言的编译过程常见的错误和警告

    C语言的编译过程: 一. C语言编译过程 C语言的编译过程可分为四个阶段: 1.预处理(Preprocessing) 对源程序中的伪指令(即以#开头的指令)和特殊符号进行处理的过程. 伪指令包括:1) ...

最新文章

  1. 总结基于ArcGIS Server 9.2 Dot Net ADF的WebGIS项目部署问题
  2. el-input中设置onkeypress事件是否匹配正则表达式显示输入内容的格式
  3. Tomcat源码调试环境搭建
  4. 透视变换–鸟瞰图_单例设计模式–鸟瞰
  5. python具有伪代码的本质吗_Python的优点之一是具有伪代码的本质。( )_学小易找答案...
  6. K8S环境中NAS卷添加noresvport方法
  7. 一文搞懂如何使用Node.js进行TCP网络通信
  8. Educational Codeforces Round 45 (Rated for Div. 2)
  9. 云坤科技助建“i慧湖”区域创新服务平台
  10. 页面跳转的两种方式(转发和重定向)区别详解:
  11. 麦克劳林公式求sin
  12. Linux shell:sh csh tcsh ash bash dash zsh
  13. 京东员工被裁后哀叹:优化后连面试的机会都没有,每月还要还贷款
  14. 柬埔寨月薪 4 万敲代码?真相是我差点丢了性命!
  15. flash的计算机知识,了解flash动画基础知识 -电脑资料
  16. Android备考01 黑马76期-day03 操作数据库
  17. 价值投资3原则:内在价值、安全边际和市场波动
  18. 笨办法学python3进阶篇_笨办法学Python 3 进阶篇
  19. CRO 管理系统(附源码)
  20. 【墨天轮专访第二期】巨杉数据库萧少聪:重视企业长期需求,打造中国的世界级产品

热门文章

  1. php支付宝查询对账单下载地址,对账单下载 · 移动支付刷脸付API接口开发文档 · 看云...
  2. 黑马程序员-微信小程序-原生框架——购物平台-首页
  3. ubuntu系统安装记录
  4. webrtc.node: undefined symbol: _ZN3rtc10DIGEST_MD5E
  5. SCI期刊最权威的信息查询步骤!
  6. BZOJ3717 [PA2014] Pakowanie [状态压缩][DP]
  7. c语言中fprintf的作用,C语言中fprintf函数介绍
  8. 科来数据包生成器使用方法
  9. 求x的n次方编程_c语言求x的n次方的函数介绍
  10. USGS下载LANDSAT5 2级别 影像问题