zoukankan      html  css  js  c++  java
  • c++实验一

    设计一个用于人事管理的“人员”类。考虑到通用性,这里只抽象出所有类型人员都具有的属性:编号、姓名、性别、出生日期、身份证号码。其中“出生日期”定义为一个“日期”类内嵌子对象。用成员函数实现对人员信息的初始化和显示。本次实验要求设计以下函数:构造函数、复制构造函数、析构函数、内联成员函数、带默认形参值的成员函数。

    #include <iostream>
    #include <cstring>
    using namespace std;
    class Date//Date类
    {
    public:
    Date(){}
    Date(int y,int m,int d);
    Date(Date &D);
    void getin();//设置时间
    void show();//展示时间
    ~Date(){}; //析构函数
    private:
    int year,month,day;
    };
    Date::Date(int y,int m,int d):year(y),month(m),day(d)
    {
    }
    void Date:: getin()
    {
    cin>>year>>month>>day;
    }
    void Date:: show()
    {
    cout<<"出生日期:"<<year<<"-"<<month<<"-"<<day<<endl;
    }
    class Person//person类
    {
    public:
    Person(){};//默认构造
    Person(char *a,char *b,char *c,char *g,int y,int m,int d):birthday(y,m,d)//有参构造 ,初始化区域初始化内嵌函数!
    {
    strcpy(number,a);
    strcpy(name,b);
    strcpy(sex,c);
    strcpy(idcard,g);
    }
    Person(Person&p);
    void input();//输入函数
    void output();//输出函数
    ~Person(){};//析构函数
    private:
    char number[20];
    char name[20];
    char idcard[30];
    Date birthday;//内嵌对象
    char sex[10];
    };
    Person ::Person(Person&p)
    { strcpy(number,p.number);
    strcpy(name,p.name);
    strcpy(sex,p.sex);
    strcpy(idcard,p.idcard);
    birthday=p.birthday;
    }
    void Person::input()
    {
    cout<<"录入数据:"<<endl;
    cout<<"编号:";
    cin>>number;
    cout<<"姓名:";
    cin>>name ;
    cout<<"性别(male/female):";
    cin>> sex;
    cout<<"身份证号码:";
    cin>>idcard;
    cout<<"出生日期(XXXX,XX,XX):";
    birthday.getin();
    }
    void Person::output()
    {
    cout<<"编号:"<<number<<endl;
    cout<<"姓名:"<<name<<endl;
    cout<<"性别:"<<sex<<endl;
    cout<<"身份证号码:"<<idcard<<endl;
    cout<<"出生日期:";
    birthday.show();
    cout<<"编号"<<number<<"的"<<name<<"收录完毕!";
    }
    int main()
    {
    Date birthday;
    Person p;
    p.input();
    cout<<endl;
    p.output();
    return 0;
    }

  • 相关阅读:
    对话框风格的窗口
    对话框
    Notification的功能与用法
    滚动视图(ScrollView)的功能与用法
    css----overflow(布局)
    css----display(显示) 与 Visibility(可见性)
    css----position(定位)
    Vue.js----router(路由)
    HTTP协议-Cookie和Session详解
    MySql 复制表命令
  • 原文地址:https://www.cnblogs.com/cy846586184/p/12888411.html
Copyright © 2011-2022 走看看