[C con Clase] Otra duda

Salvador Pozo salvador en conclase.net
Mie Mar 12 16:47:00 CET 2014


El pasado 2014-03-12 15:28:41, Miguel Alejandro jimenez escribió:
 
MAj> Muchas gracias lo ensaye y me funciono perfectamente , de todas formas me
MAj> queda la duda , ya quue no cree un metodo si no que utilice directamente :
MAj> d->getI->getA() , no se si esto viole el principio de encapsulamiento de
MAj> datos , estaria mejor crear este metodo? , o simplemente declarandolo como
MAj> hice anteriormente seria seguro para los miembros d la clase?

Hola:

Si usaste esa expresión directamente, es porque lo hiciste desde el interior de la clase C, es decir, desde uno de sus métodos.

La función miembro de la que hablaba en el mensaje anterior la necesitarás para acceder desde fuera de la clase, por ejemplo, desde main, o desde cualquier otro objeto.

El uso que has hecho de la expresión no viola el encapsulamiento, ya que accedes a un miembro privado, pero sólo desde su misma clase.

Dicho esto, el método que indiqué antes debería haberse declarado como constante, para ser consecuentes. :)

string getA() const {return d->getI()->getA();}

Lo mismo se puede aplicar al método "Impr"  de la clase A, y el método "Ver" de la clase B.

Hasta pronto.

-- 
Salvador Pozo (Administrador)
mailto:salvador en conclase.net
Blog con Clase: http://blogconclase.wordpress.com
Con Clase: http://conclase.net


Más información sobre la lista de distribución Cconclase