Одна из характеристик C ++, который является объектно-ориентированным языком программирования, является концепцией инкапсуляция. С помощью инкапсуляции программист определяет метки для членов и функций данных и указывает, доступны ли они другим классам. Когда программист помечает элементы данных как «частные», они не могут быть доступны и управляться функциями-членами других классов. Accessors разрешить доступ к этим частным данным членов.
Функция доступа в C ++ и функция мутатора похожи на функции set и get в C #. Они используются вместо того, чтобы делать ученика переменная публичный и меняющий его непосредственно внутри объекта. Чтобы получить доступ к члену частного объекта, должна быть вызвана функция доступа.
Обычно для такого члена, как Level, функция GetLevel () возвращает значение Level и SetLevel (), чтобы присвоить ему значение.
Хотя функция доступа делает элемент данных доступным, он не делает его редактируемым. Модификация защищенного элемента данных требует функции мутатора.
Поскольку они обеспечивают прямой доступ к защищенным данным, функции мутатора и средства доступа должны быть написаны и использованы осторожно.