1. ホーム
  2. c++

[解決済み] 非静的メンバ関数とは何ですか?

2022-02-04 16:47:10

質問

クラス関数の中で「this」キーワードは使えないと言われたのですが。私はC#から来たので、この機能には慣れているのですが、コンパイラは、このキーワードは非静的メンバ関数内でのみ使用可能であると言います。

D3DXVECTOR3 position;

void Position(D3DXVECTOR3 position)
{
    this.position = position;
}

解決方法は?

これは ポインタ オブジェクトのアドレスが含まれています。

D3DXVECTOR3 position;

void YourClassNameHere::Position(D3DXVECTOR3 position)
{
    this->position = position;
}

動作するはずです。

D3DXVECTOR3 position;

void YourClassNameHere::Position(D3DXVECTOR3 position)
{
    (*this).position = position;
}

も動作するはずです。