this指针
来源:互联网 发布:sql中amount可以更新吗 编辑:程序博客网 时间:2024/06/13 12:11
C++中,同一类的每个对象都有自己的数据成员的存储空间,但系统不会为每个类的对象建立成员函数副本,类的成员函数可以被各个对象调用。例如,说明一个Tclass类的对象test,函数调用:
test.print()在对象test上操作。同样,若说明一个指向Tclass的指针:
Tclass *p
则函数调用:
p->print()在*p上操作。
但从成员函数:
void Tclass::print();的参数上看,并不知道它在哪个对象上操作。其实,C++为成员函数提供了一个称为this的隐含指针参数,所以,我们常常称成员函数拥有this指针。
当一个对象调用类的成员函数时,对象的地址被传送给this指针,即this指针指向了该对象。this是一个隐含指针,不能显示说明,但可以在成员函数中显式使用。
Tcalss的成员函数可以print可以这样书写:
void Tclass::print(){ cout<<this->x<<" "<<this->y<<endl;}this指针的显式使用主要在运算符重载、自引用等场合。
this指针是一个常指针,相当于:
class_Type *const this其中,class_Type是用户定义的类类型标识符。这里,this指针一旦初始化(成员函数被调用)之后,获得了对象的地址,指针值就不能够再修改和赋值,以保证不会指向其他对象。
0 0
- this指针
- this指针
- this指针
- this指针
- this指针
- this 指针
- this指针
- this指针----
- this指针
- this 指针
- This 指针
- this指针
- This指针
- this指针
- this指针
- this 指针
- this指针
- this指针
- ubuntu下sed命令详解
- java基础
- HDU 1429 BFS + 状压
- android中的线程执行UI更新方式,以及Handler的初步了解
- C++生成随机数:高斯/正态分布(gaussian/normal distribution)
- this指针
- Code Forces 59A Word
- 回调函数的原理及PHP实例
- redis sort命令用法
- 浮点数的输入以及浮点数运算
- UVa 401 - Palindromes
- 2015/8/16
- 107Binary Tree Level Order Traversal II
- android应用在线完整更新