0

次のようなクラスがあるとします。

Class MyClass 
{ 
  int myVar1;
  int myVar2;

  void myMethod(); 
}

以下の 2 つの値の割り当てに違いはありますか?

void MyClass::myMethod()
{
   //VARIABLE ASSIGNMENT
   myVar1 = 99;

   //USING POINTER TO CLASS
   this->myVar2 = 99;
}

の使用は何ですか

これ->

変数の代入におけるポインタ (たとえば、関数を介してクラスを渡す場合などを除く) ?

4

3 に答える 3

5

スコープ内に同じ名前の変数が 2 つある場合を除き、これは同じことです。その場合、this-> を使用して区別できます。

于 2012-05-23T10:35:31.577 に答える
4

次の状況で違いが生じます。

void MyClass::myMethod(int myVar1)
{
   myVar1 = 99; //doesn't change the member

   this->myVar1 = 99; //changes the member
}

あなたの場合、違いはありません。

于 2012-05-23T10:36:30.370 に答える
3

違いはありません。あいまいさを解消するために使用することもありthis->ますが、ここではそうではありません。

于 2012-05-23T10:35:23.247 に答える