假设我有一个类:
Class MyClass
{
int myVar1;
int myVar2;
void myMethod();
}
以下两个价值分配有什么不同吗?
void MyClass::myMethod()
{
//VARIABLE ASSIGNMENT
myVar1 = 99;
//USING POINTER TO CLASS
this->myVar2 = 99;
}
的用途是什么
变量赋值中的这 - >
指针(例如,通过函数等传递类的其他情况除外)?
答案 0 :(得分:5)
除非你碰巧在范围内有两个同名的变量,否则它是一样的。在这种情况下,您可以使用this->。
进行区分答案 1 :(得分:4)
在以下情况中有所不同:
void MyClass::myMethod(int myVar1)
{
myVar1 = 99; //doesn't change the member
this->myVar1 = 99; //changes the member
}
在你的情况下,没有区别。
答案 2 :(得分:3)
没有区别。有时使用this->
帮助消除歧义,但不是在这里。