《实验报告08》
继承(拥有)和派生(扩充)综合测试
代码使用说明:
在新建项目里对应的 头文件 或 源文件 里,新建对应的文件,并把代码复制进去即可。点我参考上篇博文
代码如下:
// 1、stdafx.h头文件
#pragma once
#include <iostream>
#include <string>
using namespace std;
// 2、用户类User.h头文件
#include "stdafx.h"
#include "Person.h"
class User : public Person
{
protected:
string ID;
string Address;
string Mobilephone;
public:
User(string name, string sex, int age, string id, string address, string mobilephone);
~User();
void PhoneOperator();
void Speak();
};
// 3、用户类User.cpp源文件
#include "stdafx.h"
#include "User.h"
User::User(string name,string sex,int age,string id,string address,string mobilephone)
{
Name=name;
Sex=sex;
Age=age;
ID=id;
Address=address;
Mobilephone=mobilephone;
if(ID.length()!=18)ID="0";
if(Mobilephone.length()!=11)Mobilephone="0";
}
User::~User()
{
}
void User::PhoneOperator()
{
string str(Mobilephone,0,3);
if(str=="139"||str=="138")cout<<"手机号码为移动公司";
else if(str=="130"||str=="131")cout<<"手机号码为联通公司";
else if(str=="1189"||str=="188")cout<<"手机号码为电信公司";
else cout<<"通信运营商暂时未知";
}
void User::Speak()
{
Person::Speak();
cout<<endl<<"我的手机号码是:"<<Mobilephone<<endl;
cout<<"我的身份证号码是:"<<ID<<endl;
cout<<"我的手机通信运营商是:";PhoneOperator();
cout<<endl;
}
// 4、项目测试源文件
#include "stdafx.h"
#include "User.h"
int main()
{
system("color F0");
User Liubei("刘备","男",21,"440908200010010221","江苏涿州","13838393736");
Liubei.Speak();
system("pause");
return 0;
}