标题:这个this代表什么
取消只看楼主
hddgwxn586
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2017-5-18
结帖率:66.67%
已结贴  问题点数:10 回复次数:0 
这个this代表什么
这是网上一篇文章中的程序,运行正常。有一个语句看不懂,特来请教。
this->score = score;
这个this代表什么,整个程序中就只有一个,从哪里来的?
原文《深入解析C++中派生类的构造函数》  http://www.

程序如下:
#include<iostream>
using namespace std;
//基类
class People
{
protected:
  char *name;
  int age;
public:
  People(char*, int);//基类构造函数
};
People::People(char *name, int age): name(name), age(age){}

//派生类
class Student: public People
{
private:
  float score;
public:
  Student(char*, int, float);
  void display();
};
//调用了基类的构造函数
Student::Student(char *name, int age, float score): People(name, age)
{
 this->score = score;
}
void Student::display()
{
  cout<<name<<"的年龄是"<<age<<",成绩是"<<score<<endl;
}
int main()
{
  Student stu("小明", 16, 90.5);
  stu.display();
  return 0;
}
搜索更多相关主题的帖子: score name int age Student 
2017-07-17 15:31



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-479440-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.337501 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved