Open WAG13 opened 4 years ago
Friend функції - це функції, що не є членами цього класу, однак мають доступ до його закритих членів. Friend клас - це клас, об'єкти якого мають доступ до закритих членів класу, у якому він оголошений. Friend корисні тоді, коли потрібно забезпечити доступ до внутрішніх членів класу, в якому вони оголошені, не виставляючи повністю внутрішні члени назовні. Але не слід зловживати friend класами, адже потрібно дбати про захист даних.
Friend функція - це функція, яка не є членом класу, але має доступ до членів класу, оголошеним в полях private або protected. Методи і friend-функції будуть виконувати аналогічні дії. Зазвичай краще використовувати методи та поля класу, які є публічними, але іноді кращим буде використання friend функій.
Friend функція - це функція, яка не є членом класу, але має доступ до членів класу, оголошеним в полях private або protected. Тобто, коли ми оголошуємо дружні функції, то фактично ми говоримо компілятору, що це "друзі" класу і вони мають доступ до всіх членів цього класу, в тому числі і до закритих. Дружні функції варто використовувати, оскільки досить часто виникає ситуація коли достатньо визначити метод в одному з класів або взагалі визначити функцію, як глобальну, а в інші класи прописати її прототип, як дружній функції (використовуючи слово friend).Це економимо багато часу і код стає набагато коротшим.
friend функція,клас має доступ до закритих полів класу в якому вона оголошена. Варто не використовувати friend функції та методи дуже часто, так як є альтернативи як getter/setter, але якщо альтернатива зробити поля public краще використати friend.
Friend функція – це функція, яка не є членом класу, але має доступ до членів класу, оголошених в з модифікаторами доступу private або protected. Краще уникати використання friend, в інших мовах, окрім C++ рідко є аналоги, розробивши грамотну структуру програми, friend не буде потрібним.
Friend functions - це функції, що не є членами класу, однак мають доступ до його private/protected членів. Friend class - це клас, об'єкти якого мають доступ до private/protected членів, у якому він оголошений. Friend варто використовувати коли бажаєш надати доступ до закритих членів классу, при чому не роблячи ці члени паблік. Не варто злобживати використанням friend, проте це буває корисно
Friend function - це функція, яка має доступ до private або protected членів класу, але не є членом цього класу. Friend function можна використовувати, щоб отримати доступ до приватних полів класу, але краще їх використовувати обережно, або обійтися public методами класу.
friend функція - це функція, яка має доступ до закритих членів класу, як якщо б вона сама була членом цього класу. У всіх інших відносинах дружня функція є звичайною функцією. Для оголошення дружньої функції використовується ключове слово friend перед прототипом функції, яку ви хочете зробити дружній класу. Його можна оголошувати як в public так і private. Але friend дозволяє функції / класу працювати в тісному контакті з іншим класом, чи не змушуючи іншого класу робити відкритими свої закриті члени.
friend функція/клас мають доступ по всіх полів класу, у якому оголошені. Загалом краще взаємодіяти з класами через їх інтерфейс(public поля та методи), але у деяких випадках використання friend може бути корисним, наприклад: class BigInt { ... friend bool operator>(long, const BigInt&); // для порівняння вигляду 121323 > BigInt("12121") };
bool operator>(long lt, const BigInt& rt) { ... }