Programacion Orientada a Objetos c++ Constructores
Los constructores son funciones miembro especiales que sirven para inicializar un objeto de una determinada clase cuando se declara.
Los constructores tienen el mismo nombre que laclase, no retornan ningún valor y no pueden ser heredados. Además deben ser públicos, no tendría ningún sentido declarar un constructor como privado, ya que siempre se usan desde el exterior de laclase, ni tampoco como protegido, ya que no puede ser heredado.
Añadamos un constructor a nuestra clase pareja:
[pic]
Si una clase posee constructor, será llamado siempre que se declare un objetode esa clase, y si requiere argumentos, es obligatorio suministrarlos. Y las siguientes declaraciones son válidas:
pareja par1(12,43); pareja par1 = pareja(12,43);
Cuandono especifiquemos un constructor para una clase, el compilador crea uno por defecto sin argumentos. Por eso el ejemplo del capítulo anterior funcionaba correctamente. Cuando se crean objetos locales,los datos miembros no se inicializarían, contendrían la "basura" que hubiese en la memoria asignada al objeto. Si se trata de objetos globales, los datos miembros se inicializan a cero.Sobrecarga de constructores
También pueden definirse varios constructores para cada clase, es decir, la función constructor puede sobrecargarse. La única limitación es que no pueden declararse variosconstructores con el mismo número y el mismo tipo de argumentos. Por ejemplo, añadiremos un constructor adicional a la clase "pareja" que simule el constructor por defecto:
De este modo podemosdeclarar objetos de la clase pareja especificando los dos argumentos o ninguno de ellos, en este último caso se inicializarán los datos miembros con ceros. Se puede utilizar cualquiera de los dosconstructores pero no ambos a la misma vez.
Constructores con argumentos por defecto
También pueden asignarse valores por defecto a los argumentos del constructor, de este modo reduciremos el número de...
Regístrate para leer el documento completo.