В C ++ можно создать средство доступа, которое возвращает ссылку на частное поле.
class Cls {
private:
int _attr;
public:
int& attr() { return _attr; }
};
таким образом, чтобы к атрибуту можно было получить доступ как таковой:
// set
c.attr() = 4;
// get
cout << c.attr() << endl;
Этот стиль средства доступа идиоматичен / хорош практика? Будет ли удивлен средний программист на C ++, увидев такой стиль аксессуаров? (Подсказка: я был удивлен, когда впервые увидел это, но стиль мне понравился)