Ключові Слова Модифікаторів Доступу
Свайпніть щоб показати меню
Інкапсуляція у C++ досягається насамперед за допомогою модифікаторів доступу. Ці модифікатори визначають рівень доступу інших частин програми до членів (як даних, так і функцій) класу. Основними трьома модифікаторами доступу є:
-
private: доступні лише в межах того ж класу та приховані від зовнішнього доступу. Це рівень доступу за замовчуванням для членів класу; -
protected: доступні в межах класу та його похідних класів. Вони є більш доступними, ніжprivate-члени, але все ще забезпечують певний рівень захисту даних; -
public: доступні з будь-якої частини програми. Хочаpublic-члени не інкапсулюються, вони необхідні для визначення інтерфейсу, який клас надає зовнішнім об'єктам.
Модифікатор доступу діє до тих пір, поки не буде вказано інший.
main.cpp
12345678910111213#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 повинен відкривати лише необхідне для користувачів і приховувати свій внутрішній стан та деталі реалізації.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат