1. ホーム
  2. c++

[解決済み] C++で "this "キーワードを使用する [重複]。

2022-03-03 07:02:37

質問

<ブロッククオート

重複の可能性があります。
C++でこれを過度に使用するとコードスニームになるのか?
C++で"this"キーワードはどのような場合に使用するのでしょうか?
this->を使用する理由はありますか?

C++では、キーワード this は通常省略されるのでしょうか?例えば

Person::Person(int age) {
    _age = age;
}

とは対照的です。

Person::Person(int age) {
    this->_age = age;
}

解決方法は?

はい、必須ではありませんので、通常は省略されます。ただし、スコープ内でオーバーライドされた後の変数にアクセスする際には必要かもしれません。

Person::Person() {
    int age;
    this->age = 1;
}

あと、これ。

Person::Person(int _age) {
    age = _age;
}

同じ名前のイニシャライザーが必要な場合は、この記法を使用してください。

Person::Person(int age) : age(age) {}

詳しくはこちら https://en.cppreference.com/w/cpp/language/initializer_list