可能重复:
Is this key-oriented access-protection pattern a known idiom?
我有class A
和class B
。我希望class A
访问class B
个私人函数之一;但只有这一点,而不是其他一切。这可能吗?
某种例子:
class A {
//stuff
};
class B {
int r; // A cant use this
MagicFriendKeyword A void func(); // A can use this
public:
...
};
答案 0 :(得分:4)
如果A类中有一个(或几个)成员函数,想要使用B类的私有成员函数,那么您可以将这些/少数函数声明为朋友。 E.g。
class B {
// ...
friend void A::mutateB( B * );
// ...
};