Зміст курсу
C++ ООП
C++ ООП
Ключові Слова Модифікаторів Доступу
Інкапсуляція у C++ досягається головним чином за допомогою модифікаторів доступу. Ці модифікатори визначають рівень доступу інших частин програми до членів (як даних, так і функцій) класу. Основними трьома модифікаторами доступу є:
private
: доступні лише в межах того ж класу та приховані від зовнішнього доступу. Це рівень доступу за замовчуванням для членів класу;protected
: доступні в межах класу та його похідних класів. Вони більш доступні, ніжprivate
-члени, але все ще забезпечують певний рівень захисту даних;public
: доступні з будь-якої частини програми. Хочаpublic
-члени не інкапсулюються, вони необхідні для визначення інтерфейсу, який клас надає зовнішнім об'єктам.
Модифікатор доступу діє до тих пір, поки не буде вказано інший.
main.cpp
#include <iostream> class Person { public: std::string name; }; int main() { Person person; person.name = "Bob"; std::cout << person.name; }
Спробуйте видалити або змінити ключове слово public
і подивіться, що станеться.
Подібно до того, як водій може керувати автомобілем без розуміння його внутрішньої механіки, користувачам і програмістам не потрібно турбуватися про private
атрибути та методи всередині класу. Дотримуйтеся таких правил:
Зберігайте члени даних як
private
абоprotected
;Надавайте
public
методи для доступу та зміниprivate
даних;Переконайтеся, що ці методи виконують лише те, для чого вони призначені, без розкриття внутрішньої логіки.
Добре інкапсульований class
повинен відкривати лише необхідне для користувачів і приховувати свій внутрішній стан та деталі реалізації.
Дякуємо за ваш відгук!