C++ Primer 第五版 中文版 练习 13.18 个人code

来源:互联网 发布:ifashion淘宝怎么认证 编辑:程序博客网 时间:2024/06/06 07:39

C++ Primer 第五版 中文版 练习 13.18

题目:定义一个Employee类,它包含雇员的姓名和唯一的雇员证号。
为这个类定义默认构造函数,以及接受一个表示雇员姓名的string的构造函数。
每个构造函数应该通过递增一个static数据成员来生成一个唯一的证号。

答:

Employee.h

#include <string>class Employee{public:Employee(); //默认构造函数Employee(const std::string &); //接受雇员姓名的构造函数Employee(const Employee&) = delete;  //不需要拷贝构造函数Employee operator=(const Employee&) = delete; //不需要拷贝赋值运算符~Employee();private:int seedpp();std::string name; //雇员姓名int id;  //雇员证号static int seed; //递增的值};

Employee.cpp

#include "Employee.h"using namespace std;int Employee::seedpp(){return ++seed;}Employee::Employee() :name(), id(id + seedpp()){}Employee::Employee(const std::string &s) : name(s), id(id+seedpp()){}


0 0
原创粉丝点击