this指针
- this作用域是在类内部,只能在成员函数中使用;
- this在成员函数的开始前构造,在成员函数的结束后清除;
- 编译器在编译的时候也会自动加上this,它作为非静态成员函数的隐含形参,对各成员的访问均通过this进行。
使用:
- 在类的非静态成员函数中返回类对象本身的时候,直接return *this;
- 当参数与成员变量名相同时,如this->n=n(不能写成n=n);
参考:https://www.cnblogs.com/Star-Lit/p/8623050.html
Triangular& Triangular::
copy(Triangular *this,const Triangular &rhs)
{this->_length=rhs._length;this->_beg_pos=rhs._beg_pos;this->_next-rhs._beg_pos-1;
};
//调用方式被编译器从tr1.copy(tr2);转换为
//tr1变成this指针所指的对象
copy(&tr1,tr2);
Triangular& Triangular::
copy(const Triangular &rhs)
{//检查两个类对象是否相同if(this!=&rhs){_length=rhs._length;_beg_pos=rhs._beg_pos;_next=_rhs._beg_pos-1;}return *this;
}
tr1.copy(tr2);