你看我像大猩猩不? 2022-11-09 09:59 采纳率: 89.5%
浏览 32
已结题

请问为什么我这个样子他不输出年龄呢?

请问为什么我这个样子不输出年龄呢?但是我把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;
}
  • 写回答

2条回答 默认 最新

  • 码上就疯 2022-11-09 10:24
    关注

    你不输出年龄是因为输出姓名后报错了,string getName() 这个方法需要返回值,你注释了return,当然不行

     
    #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() 
        {
            
           cout<<"姓名 "<<name<<endl;
           return name;
        }      
        int getAge()
        {
            //m_Age=0;//年龄只读 直接写获取 不写set 直接在这里初始化了      <这里不需要赋值0,整型默认是0>
            return m_Age; 
        }
    }; 
    int main()
    {
        Person p;
        p.setName("张三");
        //cout<<"姓名 "<<p.getName()<<endl;
        p.getName();
        cout<<"年龄 "<<p.getAge()<<endl; 
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月17日
  • 已采纳回答 11月9日
  • 创建了问题 11月9日

悬赏问题

  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。
  • ¥20 CST怎么把天线放在座椅环境中并仿真
  • ¥15 任务A:大数据平台搭建(容器环境)怎么做呢?