this 指针及其作用
this 指针及其作用this指针是类的非静态成员函数中编译器隐式传入的一个指针指向调用该成员函数的当前对象。this指针只存在于非静态成员函数中静态成员函数中没有this它的作用主要有1. 区分成员变量和形参当成员变量和函数参数同名时可以用this明确表示当前对象的成员。classA{public:intx;voidsetX(intx){this-xx;}};2. 在成员函数中访问当前对象this-member表示访问当前对象的成员。3. 返回当前对象本身常用于链式调用如boost中的assign库的相关使用。classA{public:AsetX(intx){this-xx;return*this;}private:intx;};4. 判断是否自赋值自赋值是指一个对象赋值给自己的情况通常发生在赋值运算符operator被调用时左操作数和右操作数是同一个对象。classA{Aoperator(constAother){// 判断是否自赋值if(thisother){return*this;}/* 释放自己资源分配新资源复制数据 若不存在自赋值判断操作会误释放自己的资源触发错误 */return*this;}};intmain(){A a;aa;// 自赋值return0;}