Меня тоже. Я также даю аксессорам/мутаторам те же имена.
Мне было интересно об этом, потому что я всегда использовал setBar(int bar)< /code> вместо мутатора с тем же именем. Я хочу знать: может ли компилятор определить на основе константного идентификатора, что меняется во время выполнения, или он может использовать то же имя функции, потому что у нее есть параметр?
Будет ли это компилируется нормально:
Код: Выделить всё
class Foo
{
int bar_;
public:
int bar() { return bar_; }
void bar(int bar) { bar_ = bar; }
}
Код: Выделить всё
int bar() const { return bar_; }
Почему это работает именно так?
Подробнее здесь: https://stackoverflow.com/questions/123 ... ons-mutate