c++ 类与对象的定义和类成员的访问控制

1)定义一个名为CPerson的类,该类有以下属性:name、sex和age,请用C++语言定义这个类,并为上述属性定义相应的成员函数(如:setName(const char *)和getName()),要求能够通过相应的成员函数设置和获取姓名、性别和年龄;
(2)定义类CPerson的对象测试调用成员函数;
(3)合理设置所有的属性和成员函数的访问控制类型(private或public);
有人教教我要怎么做吗😭还有做这个的时候需要做包含多个文件的项目吗

用多个文件或者当文件都是可以的。
如果用多个文件,就新建类的.h文件和cpp文件,分别存放类的声明和实现即可。然后单独写一个测试程序(如main.cpp)。
如果只用1个文件,把.h文件和.cpp文件的内容放在一个文件中就可以了(注意类的声明部分需要放main函数前面)
(1)多文件写法
CPerson.h文件:

#ifndef _CPERSON_H
#define _CPERSON_H

#include <string>
using namespace std;
class CPerson
{
private:
    string mName;
    string mSex;
    int mAge;
public:
    CPerson();
    CPerson(string name,string sex,int age);

    //获取和设置属性
    string getName();
    void setName(string name);

    string getSex();
    void setSex(string sex);

    int getAge();
    void setAge(int age);

    //显示
    void show();
};


#endif

CPerson.cpp文件:

#include "Cperson.h"


CPerson::CPerson()
{
    mName = "";
    mSex="";
    mAge = 0;
}

CPerson::CPerson( string name,string sex,int age )
{
    mName = name;
    mSex=sex;
    mAge = age;
}

std::string CPerson::getName()
{
    return mName;
}

void CPerson::setName( string name )
{
    mName = name;
}


std::string CPerson::getSex()
{
    return mSex;
}

void CPerson::setSex( string sex )
{
    mSex = sex;
}

int CPerson::getAge()
{
    return mAge;
}

void CPerson::setAge(int age)
{
    mAge = age;
}

//显示信息
void CPerson::show()
{
    cout << "姓名:"<<mName <<" 性别:"<<mSex <<" 年龄:"<<mAge<<endl;
}

测试程序(main.cpp):

#include "Cperson.h"
#include <iostream>
using namespace std;

int main()
{
    CPerson ps1;
    ps1.setName("张三");
    ps1.setSex("男");
    ps1.setAge(22);
    ps1.show();

    CPerson ps2("李四","男",33);
    ps2.show();

    return 0;
}

(2)单个文件,写法如下:

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


class CPerson
{
private:
    string mName;
    string mSex;
    int mAge;
public:
    CPerson();
    CPerson(string name,string sex,int age);

    //获取和设置属性
    string getName();
    void setName(string name);

    string getSex();
    void setSex(string sex);

    int getAge();
    void setAge(int age);

    //显示
    void show();
};



CPerson::CPerson()
{
    mName = "";
    mSex="";
    mAge = 0;
}

CPerson::CPerson( string name,string sex,int age )
{
    mName = name;
    mSex=sex;
    mAge = age;
}

std::string CPerson::getName()
{
    return mName;
}

void CPerson::setName( string name )
{
    mName = name;
}


std::string CPerson::getSex()
{
    return mSex;
}

void CPerson::setSex( string sex )
{
    mSex = sex;
}

int CPerson::getAge()
{
    return mAge;
}

void CPerson::setAge(int age)
{
    mAge = age;
}
//
void CPerson::show()
{
    cout << "姓名:"<<mName <<" 性别:"<<mSex <<" 年龄:"<<mAge<<endl;
}



int main()
{
    CPerson ps1;
    ps1.setName("张三");
    ps1.setSex("男");
    ps1.setAge(22);
    ps1.show();


    CPerson ps2("李四","男",33);
    ps2.show();

    return 0;
}

#include <iostream>
#include <strting>
using namesapce std;
class CPerson
{
    string name;
    string sex;
    int age;
public:
    CPerson() {}
    CPerson(string n,string s,int a) {name = n;sex = s;age = a;}
    void setName(string n) {name = n;}
    string getName() {return name;}
    void setSex(string s) {sex = s;}
    string getSex() {return sex;}
    int getAge() {return age;}
    void setAge(int a) {age = a;}
};

int main()
{
    CPerson p("zhangsan","男",19);
    cout<<"姓名:"<<p.getName()<<endl;
    cout<<"性别:"<<p.getSex()<<endl;
    cout<<"年龄:"<<p.getAge()<<endl;
    return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632