使用自指针将值分配给类数据成员时的差异

Difference when assigning values to class data members using self pointer

本文关键字:数据成员 分配 指针      更新时间:2023-10-16

假设我有一个这样的类:

Class MyClass 
{ 
  int myVar1;
  int myVar2;
  void myMethod(); 
}

下面的两个值分配有什么区别吗?

void MyClass::myMethod()
{
   //VARIABLE ASSIGNMENT
   myVar1 = 99;
   //USING POINTER TO CLASS
   this->myVar2 = 99;
}
有什么

这>

变量赋值中的指针(除了其他情况,例如通过函数传递类等)?

这是一回事,除非你碰巧在作用域中有两个同名的变量。在这种情况下,您可以使用此>进行区分。

在以下情况下会有所不同:

void MyClass::myMethod(int myVar1)
{
   myVar1 = 99; //doesn't change the member
   this->myVar1 = 99; //changes the member
}

在您的情况下,没有区别。

没有区别。 有时使用this->有助于消除歧义,但不是在这里。

相关文章: