azões para definir funções-membro não-constantes 'get'
Estou trabalhando para aprender C ++ com o livro Stroustrup (Princípios de programação e prática usando C ++). Em um exercício, definimos uma estrutura simples:
template<typename T>
struct S {
explicit S(T v):val{v} { };
T& get();
const T& get() const;
void set(T v);
void read_val(T& v);
T& operator=(const T& t); // deep copy assignment
private:
T val;
};
Somos então solicitados a definir uma função de membro const e não-const para obterval
.
Eu queria saber: existe algum caso em que faz sentido ter não-constget
função que retornaval?
It seems much cleaner to me that we can't change the value in such situations indirectly. What might be use cases where you need a const and a non-const <code>get</code> function to return a member variable?