CPP】【const 指针与引用】实验3实验内容5

题目描述

创建一个Employee类,要求如下: 1)该类中有string,表示姓名、街道地址、市、省、邮政编码、和记录序号。 2)把表示构造函数、改名changeName、display()的函数原型(函数声明)放在类声明中,函数实现放在类实现文件中。其中构造函数初始化每个成员,display函数把完整的对象数据打印出来。 3)其中的数据成员是私有的,函数是公有的

输入

王华 中华路15号 武汉 湖北 430070 1 杨丽 天津路30号 南京 江苏 210020 2 王国强

输出

输出记录1: 姓名:王华 街道地址:中华路15号 省份:湖北 邮政编码:430070 输出记录2: 姓名:杨丽 街道地址:天津路30号 省份:江苏 邮政编码:210020 输出记录1: 姓名:王国强 街道地址:中华路15号 省份:湖北 邮政编码:430070 Press any key to continue

样例输入

王华 中华路15号 武汉 湖北 430070 1 杨丽 天津路30号 南京 江苏 210020 2 王国强

样例输出

输出记录1: 姓名:王华 街道地址:中华路15号 省份:湖北 邮政编码:430070 输出记录2: 姓名:杨丽 街道地址:天津路30号 省份:江苏 邮政编码:210020 输出记录1: 姓名:王国强 街道地址:中华路15号 省份:湖北 邮政编码:430070

两种风格代码:

对象在外部实现

#include<string>
#include <iostream>
using namespace std;

class Employee
{
public:
	void display(); 
	Employee(string name,string street,string city,string province,string postcode,int id);
	void changeName(string name);
private:
	string itsname;
	string itsstreet;
	string itscity;	
	string itspro;
	string itspos;
	int n;
};

Employee::Employee(string name,string street,string city,string province,string postcode,int id)
{
	itsname=name;
	itsstreet=street;
	itscity=city;
	itspro=province;
	itspos=postcode;
	n=id;
}

void Employee::display()
{
	cout<<"输出记录"<<n<<':'<<endl;
	cout<<"姓名:"<<itsname<<endl;
	cout<<"街道地址:"<<itsstreet<<endl;
	cout<<"省份:"<<itspro<<endl;
	cout<<"邮政编码:"<<itspos<<endl; 
}

void Employee::changeName(string name)
{
	itsname=name;
}
int main()
{
	string name,street,city,province,postcode;
	int id;
	cin>>name>>street>>city>>province>>postcode>>id;
	Employee emp1(name,street, city,province,postcode,id);
	
	cin>>name>>street>>city>>province>>postcode>>id;
	Employee emp2(name,street, city,province,postcode,id);

	emp1.display ();
	emp2.display ();

	cin >> name;
	emp1.changeName(name);
	emp1.display ();
	return 0;
}

对象在类中实现

#include<string>
#include <iostream>
using namespace std;


class Employee
{
public:
	void display()
	{
		cout<<"输出记录"<<n<<':'<<endl;
		cout<<"姓名:"<<itsname<<endl;
		cout<<"街道地址:"<<itsstreet<<endl;
		cout<<"省份:"<<itspro<<endl;
		cout<<"邮政编码:"<<itspos<<endl;
	}
	Employee(string name,string street,string city,string province,string postcode,int id)
	{
		itsname=name;
		itsstreet=street;
		itscity=city;
		itspro=province;
		itspos=postcode;
		n=id;
	}
	void changeName(string name)
	{
		itsname=name;
	}
private:
	string itsname;
	string itsstreet;
	string itscity;	
	string itspro;
	string itspos;
	int n;
};

int main()
{
	string name,street,city,province,postcode;
	int id;
	cin>>name>>street>>city>>province>>postcode>>id;
	Employee emp1(name,street, city,province,postcode,id);
	
	cin>>name>>street>>city>>province>>postcode>>id;
	Employee emp2(name,street, city,province,postcode,id);

	emp1.display ();
	emp2.display ();

	cin >> name;
	emp1.changeName(name);
	emp1.display ();
	return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值