请问为什么我这个样子不输出年龄呢?但是我把23行解开,把24行注释掉,再把36行解开,把37行注释掉就能输出年龄了呢?
#include <iostream>
#include <string>
using namespace std;
//成员属性设置为私有
//1.可以自己控制读写权限
//2.对于写 可以检测数据的有效性
class Person
{
private:
string name;//设置可读可写
int m_Age;//设置只读不写
string lover;//二奶只写 不显示 不读
//都设置成私有,就要有共有的接口和他对接来修改or赋值他
public:
//写姓名
void setName(string name2)
{
name=name2;
}
//读姓名
string getName()
{
//return name;
cout<<"姓名 "<<name<<endl;
}
int getAge()
{
m_Age=0;//年龄只读 直接写获取 不写set 直接在这里初始化了
return m_Age;
}
};
int main()
{
Person p;
p.setName("张三");
//cout<<"姓名 "<<p.getName()<<endl;
p.getName();
cout<<"年龄 "<<p.getAge()<<endl;
return 0;
}