如何在 c++ OOP 中显示我的 ID 姓名年龄

Posted

技术标签:

【中文标题】如何在 c++ OOP 中显示我的 ID 姓名年龄【英文标题】:how can I show my ID Name Age in c++ OOP 【发布时间】:2018-05-26 16:53:02 【问题描述】:

你好,我刚开始使用 c++ OOP。我无法显示我的 ID NAME AGE 请帮助我我试图找到问题,但我不能。当它运行时我 cout name id age 显示如下你好我的名字是:我的年龄是:0 我的 ID 是: 4354512 之前谢谢你。

#include<iostream>
#include<conio.h>
using namespace std;

class person
 
  public:
   string name;
   int age;
   int id;
   void set_name( string myname)
    
     myname = name;
    
   void set_age( int myage)
   
    myage = age;
   
  void set_id( int myid)
  
    myid = id;
  
;
class student : public person
 
  public:
   void display()
   
    cout<<"Hello my Name is : "<<name<<endl;
    cout<<"My age is : "<<age<<endl;
    cout<<"My ID is : "<<id<<endl;
   
 ;
int main()
 
  student obj;
  obj.set_name("NuthVireak");
  obj.set_age(19);
  obj.set_id(004);
  obj.display();
  getch();
 

【问题讨论】:

【参考方案1】:

你的二传手是相反的:

void set_name( string myname)

    // you are setting the local parameter myname
    // to the member name which is probably defaulted to zero
    // myname = name;
    // try
    name = myname;

void set_age( int myage)

    // same here
    // myage = age;
    age = myage;

void set_id( int myid)

    // same here
    // myid = id;
    id = myid;

【讨论】:

谢谢 StaticBeagle。现在显示姓名、年龄、ID。【参考方案2】:
void set_name( string myname)

 this->name = myname;




void set_age( int myage)
   
    this->age = myage;
   

void set_id( int myid)
  
    this->id = myid;
  

【讨论】:

当我使用这个时,我得到了 2 错误:|17|error: request for member 'age' in '(person*)this',它是指针类型 'person*'(也许你的意思使用'->'?)| |21|错误:在 '(person*)this' 中请求成员 'id',它是指针类型 'person*' (也许你打算使用 '->' ?)| 编辑“.”后到“->”现在它工作了谢谢你帮助我。

以上是关于如何在 c++ OOP 中显示我的 ID 姓名年龄的主要内容,如果未能解决你的问题,请参考以下文章

C++ 在构造函数中初始化数组

如何找到存储在 C++ 向量中的对象的类方法?

编写Java程序,用于显示学生的姓名和年龄、专业。

无法将关键字“用户名”解析为字段。选项有:地址、年龄、城市、国家、性别、姓名、电话、pt_id、用户、user_id

多表查询-练习

使用SharedPreferences将姓名和年龄信息保存在文件中,并读取信息