新标准C++(郭炜)第三章细节问题小结(4):友元函数,友元类 , this指针

友元
一.友元函数
1.定义:在定义一个类的时候,可以把一些函数(包括全局函数和其他类的成员函数)声明为“友元”,那样这些函数就成为该类的友元函数,在友元函数内部就可以访问该类对象的私有成员了。将全局函数声明为友元的写法如下:
friend 返回值类型 其他类的类名::成员函数名(参数表);
但是,不能把其他类的私有成员函数声明为友元
二.友元类
1.一个类A可以将另一个类B声明为自己的友元,类B的所有成员函数就可以访问类A对象的私有成员。在类定义中声明友元类的写法如下:

friend class 类名;
三.this指针
//"this"指针指向了成员函数作用的对象,在成员函数执行的过程中,正是通过“this指针”才能找到对象所在的地址,因而也就能找到对象的所有非静态成员变量的地址。
//C++规定,在非静态成员函数内部可以直接使用this关键字,this就代表指向该函数所作用的对象的指针。
*this代表函数所作用的对象
静态成员函数并不作用于某个对象,所以在其内部不能使用this指针

猜你喜欢

转载自blog.csdn.net/weixin_43853077/article/details/103244637