私は2つのクラスを持っています:
class base
{
protected:
int x;
};
class der: public base
{
void Acc(base& b)
{
b.*(&der::x) = 5;
}
};
この方法 (&der::x) で基本保護されたメンバーにアクセスしても安全ですか? 間違った変数を指すのではないかと心配しています。
これは、基底クラス オブジェクトの保護されたメンバーにアクセスして渡す方法です。
上記のコード: