
一、 引入
定义一个类的对象,首先系统已经给这个对象分配了空间,然后会调用构造函数。一个类有多个对象,当程序中调用对象的某个函数时,有可能要访问到这个对象的成员变量。而对于同一个类的每一个对象,都是共享同一份类函数。对象有单独的变量,但是没有单独的函数,所以当调用函数时,系统必须让函数知道这是哪个对象的操作,从而确定成员变量是哪个对象的。这种用于对成员变量归属对像进行区分的东西,就叫做this指针。事实上它就是对象的地址,这一点从反汇编出来的代码可以看到。
二、分析
1、测试代码:
view sourceprint?///////////////////////////////////////////////////
#include
using namespace std;
/////////////////////////////////////////////////////
class A
{
public:
A(char *szname)
{
cout<<"construct"<
name = new char[20];
strcpy(name, szname);
}
~A()
{
cout<<"destruct"<
delete name;
}
void show();
private:
char *name;
};
/////////////////////////////////////////////////////
void A::show()
{
cout<<"name = "<
}
/////////////////////////////////////////////////////
int main()
{
A a("zhangsan");
a.show();
system("pause");
return 0;
}
2017年计算机等级考试二级C++辅导:this指针与另一种“多态”.doc正在阅读:
2017年计算机等级考试二级C++辅导:this指针与另一种“多态”11-19
春天来了作文500字09-05
辽宁2022年4月韩国语能力考试成绩查询时间及入口【5月19日起】05-21
初夏光年作文700字08-21
2019在职研究生毕业自我鉴定10-07
特殊的感觉作文700字09-05
三年级状物作文:我爱绿叶_350字05-10
妈妈的鼓励作文800字05-09
懂得感恩作文400字07-21
江苏理工学院2017分数线_江苏理工学院2017年12月英语六级报名入口:http://www.jstu.edu.cn/02-06
元旦晚会主持词开场白5篇08-19