Una pregunta. En una clase cualquiera tengo:
Código C++:
Ver originalclass x{
private:
int *ptr;
int tamanio;
};
Si tengo una funcion publica:
Código C++:
Ver originalint &devolvertamanio () const{
retur tamanio;
} // Da error!! tiene que ser const int&devolvertamanio () const
Código C++:
Ver originalint &operator[] ( const int &subindice ) const{
return ptr[subindice];
}//No da error
porque el primero si da error y la segunda no? en realidad devuelvo un objeto int con un objeto const. es porque ptr[subindice] esta en una direccion de memoria que no pertenece al objeto que le estoy pasando?
Un saludo!