设计一个Person类,Person类具有name和age属性,提供初始化函数(Init)

  • Post author:
  • Post category:其他


C++设计一个Person类

要求:设计一个Person类,Person类具有name和age属性,提供初始化函数(Init),并提供对name和age的 读写函数(set,get),但必须确保age的赋值在有效范围内(0-100),超出有效范围,则拒绝赋值,并提供方法输出姓名和年龄。

person.h
#ifndef PERSON_H
#define PERSON_H
 
//类的头文件:一般定义成员数据 声明成员函数
class Person
{
private:
    char m_name[32];
    int m_age;
public:
    //初始化m_name m_age
    void init(char *name, int age);
    //设置name
    void setName(char *name);
    //获取name
    char *getName(void);
    //设置age
    void setAge(int age);
    //获取age
    int getAge(void);
    //显示m_name m_age
    void showPerons(void);
};
 
#endif // PERSON_H
person.cpp
#include "person.h"
//#include <string.h>
#include<cstring>
#include<iostream>
using namespace std;
//定义类的成员函数
void Person::init(char *name, int age)
{
 
    strcpy(m_name, name);
    if(age>=0 && age<=100)
    {
        m_age = age;
    }
    else
    {
        cout<<"年龄输入非法"<<endl;
    }
}
 
void Person::setName(char *name)
{
    strcpy(m_name, name);
    return;
}
 
char *Person::getName()
{
    return m_name;
}
 
void Person::setAge(int age)
{
    if(age>=0 && age<=100)
    {
        m_age = age;
    }
    else
    {
        cout<<"年龄输入非法"<<endl;
    }
    return;
}
 
int Person::getAge()
{
    return m_age;
}
 
void Person::showPerons()
{
    cout<<"姓名:"<<m_name<<", 年龄:"<<m_age<<endl;
    return;
}
main.cpp
#include <iostream>
#include "person.h"
using namespace std;
 
int main(int argc, char *argv[])
{
    Person ob;
 
    ob.init("大俊", 18);
    ob.showPerons();
 
    ob.setName("大硕");
    //cout<<"姓名:"<<ob.getName()<<endl;
 
    ob.setAge(19);
    //cout<<"年龄:"<<ob.getAge()<<endl;
    ob.showPerons();
    return 0;
}



版权声明:本文为Ysmooth原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。