码迷,mamicode.com
首页 > 编程语言 > 详细

C++类中的this指针的作用

时间:2014-12-06 18:00:56      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:blog   http   sp   数据   2014   log   bs   tt   size   

1.我们知道C++的类成员函数中,默认都隐含了一个this指针,标识调用该成员函数的对象

2.为什么需要有一个this指针呢?C++设计这个机制的初衷是什么呢?

我们知道,普通的C++类,其成员函数是类的所有对象共享的,而数据时每个对象所独有的.即:数据独有,方法共享

因此在调用类的某个成员方法(非静态方法)时,我怎么知道是哪个对象调用的呢?此时就是通过this指针来区分的,通过this指针我可以区分是该类的哪个对象正在调用该成员方法.

bubuko.com,布布扣

注意事项:

a.this指针不属于对象本身的一部分,不会影响sizeof作用于某个类对象的结果,因为sizeof本身也是求对象所对应的类的大小,与对象无关

b.this指针的作用域在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自动将对象本身的地址作为一个隐含参数传递给函数。也就是说,即使你没有写上this指针,编译器在编译的时候也是加上this的,它作为非静态成员函数的隐含形参,对各成员的访问均通过this进行。

 

C++类中的this指针的作用

标签:blog   http   sp   数据   2014   log   bs   tt   size   

原文地址:http://www.cnblogs.com/ttss/p/4148432.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!