Friend-функции, friend-классы C++ - дружественные функции и дружественные классы
Primary tabs
Спецификаторы доступа класса позволяют указывать, могут ли функции вне определенного вами класса обращаться к его элементам. Может, однако, случиться, что вам потребуется обеспечить определенной функции или классу доступ к элементам вашего класса, специфицированным как private или protected.
Для обеспечения такой возможности используется ключевое слово friend.
Вы можете разрешить элементам другого класса (anotherClass) полный доступ к элементам вашего класса (myClass), объявленным как private или protected, включив в определение вашего класса описание friend. Например:
class myClass
{
friend class anotherClass; // дружественный класс
};
Аналогично вы можете разрешить обычной функции или функции-элементу другого класса полный доступ к элементам класса с помощью описания friend. Например:
class myClass
{
// дружественный метод
friend void anotherClass::MemberFuncName(int);
// дружественная функция
friend void regularFuncName(double);
};
источник (спасибо что есть=))= http://codingrus.ru/readarticle.php?article_id=2699
- Log in to post comments
- 8546 reads