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