アプリ版:「スタンプのみでお礼する」機能のリリースについて

先ずthisはメンバ関数を呼び出したオブジェクトのアドレスを格納したポインタであることは分かります。
例えば、クラス名をTest、オブジェクト変数をa、呼び出した関数をyamada()とすると、

Test a;
a.yamada();

と書け、yamada()の中に書かれたthisは&aのことを指しますよね?
しかし*thisは何を指すのでしょうか?
例えば

 int b = 5;
 int* pB = &b;

だったら
 
 *pB = 5

となりますが、aの場合にはメンバ(値と関数)が代入されているので、

 *this = クラスに書かれた値と関数全部

となるのでしょうか。

詳しい方がいらっしゃいましたら
ご教授お願いいたします。

A 回答 (1件)

自分のオブジェクト自身を表します。



| *this = クラスに書かれた値と関数全部
| となるのでしょうか。

に関しては、概ねその認識で問題はありません。
    • good
    • 0
この回答へのお礼

なるほど。

this = &a
*this = a

ということですね。よくよく考えてみたらそうですね。
ご教授有難うございました。

お礼日時:2020/05/26 18:21

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!