友元クラスおよび友元関数
3411 ワード
ゆうげんかんすうは、クラスのプライベート・メンバー にアクセスできます.友元の宣言は定数制限を制限せず、クラスの任意の位置で を宣言することができる.
友元類友元クラスのすべてのメンバー関数は、別のメンバー関数 になります.友元関係は一方的であり、互いに友元関係を構成する必要がある場合は、 を相互に宣言する必要がある.友元関係は に伝達できない
内部クラスオブジェクトを介して外部クラスのプライベートメンバーにアクセスすることができ、メタクラスと同様に、外部クラスは内部クラスのプライベートメンバー にアクセスできません.内部クラスは、外部クラスの静的メンバー に直接アクセスすることができる.
友元類
内部クラス
class C
{
public:
//D , D C
class D
{
public:
void displayC(const C& c)
{
cout << c._c << endl;
cout << c._sc << endl;
cout << C::_sc << endl;
// static
cout << _sc << endl;
}
private:
int _d = 20;
};
private:
//E
class E
{
private:
int _e = 30;
};
int _c = 10;
static int _sc;
};
int C::_sc = 100;