Войти на сайтРегистрацияЗабыли пароль?
Android
Меню
Топ-игры
Асфаль 7 для Android
Каталог
Новинки
ОГЭ по математике 2026 — Слив
Альмира Искакова — Слив missalmir (Almir
SOSKAREEN — Слив Karina D aka Karinka17
Карина Оксукпаева — Слив
Ерке Есмахан — Слив
Диана Райс – Слив DianaRice
Айым Номад — Слив Seninaiiyn (блогер aiy
Популярные статьи
Как в максе сделать опрос (пошаговая инструкция) — быст ...
Как посмотреть номер телефона в максе (инструкция) — ра ...
Как удалить чат в максе (пошаговая инструкция) — просто ...
Как понять что тебя заблокировали в максе (пошаговая ин ...
Как в максе поставить статус (пошаговая инструкция) — п ...
Как создать канал в максе (пошаговая инструкция) — прос ...
Что такое лолка и как ее установить на компьютер? (поша ...
Как включить голосовой чат в кс 2 (пошаговая инструкция ...
Как написать в телеграм по номеру телефона (пошаговая и ...
Как узнать что тебя заблокировали в чате телеграм? (по ...


 Друзья
TexnoMozg
15 июня 2009 16:24
Сообщение #1


Руководитель проекта
  • 85

Репутация: 378
Группа: Администраторы
Сообщений: 13613
Регистрация: 14.04.2009
ICQ:3262504
Реклама
Функции-друзья — это функции, не являющиеся функциями-членами и тем не менее имеющие доступ к защищённым и собственным полям и функциям-членам класса. Они должны быть описаны в теле класса как friend. Например:
class Matrix {
...
friend Matrix Multiply(Matrix m1, Matrix m2);
...
};

Matrix Multiply(Matrix m1, Matrix m2) {
...
}


Здесь функция Multiply может обращаться к любым полям и функциям-членам класса Matrix.

Существуют также классы-друзья. Если класс A — друг класса B, то все его функции-члены могут обращаться к любым полям и функциям членам класса B. Например:
class Matrix {
...
friend class Vector;
...
};


Однако в С++ не действует правило «друг моего друга — мой друг».

По стандарту C++03 вложенный класс не имеет прав доступа к закрытым членам объемлющего класса и не может быть объявлен его другом (последнее следует из определения термина друг как нечлена класса). Тем не менее, многие широко распространённые компиляторы нарушают оба эти правила (по всей видимости, ввиду совокупной странности этих правил).

--------------------

*´¨)
¸.•´¸.•*´¨) ¸.•*¨)
(¸.•´ (¸.•` ¤ TexnoMozg.
Перейти в начало страницы
 
« · C++ · »
 Информация
Нужно зарегистрироваться, чтобы отвечать на форуме, а сейчас Вы, как Гости


  Сейчас: 3 июня 2026 11:33