Геттеры и сеттеры в C ++ - PullRequest
0 голосов
/ 30 июля 2010

Должен ли я использовать методы получения и установки в C ++ или лучше получить прямой доступ к данным класса?

Ответы [ 4 ]

2 голосов
/ 30 июля 2010

Обычное обоснование для методов получения и установки: Вы можете изменить его с простой обертки вокруг частного поля на довольно сложное вычисление, не нарушая никакого кода, использующего класс. Если вы уверены, что геттеры / сеттеры никогда не будут больше этого (или их никогда не будут использовать так много), не стесняйтесь использовать поле пульса, я не против.

1 голос
/ 30 июля 2010

Это зависит от того, какая у вас реализация и какой стиль вы используете.Частью языкового дизайна является возможность использовать инкапсуляцию, поэтому, как правило, рекомендуется использовать методы get и set для доступа к закрытым данным класса.

0 голосов
/ 30 июля 2010

Если в геттере / установщике нет логики, за исключением возврата / присвоения значения из / в открытое поле, нет существенной разницы между использованием получателей / установщиков и непосредственным доступом к полю.

0 голосов
/ 30 июля 2010

В целом, геттер и сеттер лучше.

Исключение составляют случаи, когда у вас есть простой класс, обычно подразумевающий класс без функций-членов, который просто используется для объединения данных, чтобы их можно было легче передавать.

...