Sunteți pe pagina 1din 9

UNIVERSIDAD NACIONAL TECNOLGICA DELCONO SUR DE LIMA

CONSTRUCTORES Y DESTRUCTORES

CURSO: ALGORITMOS Y ESTRUCTURA DE DATOS. DOCENTE: DR. FRANK EDMUNDO ESCOBEDO BAYLN. INTEGRANTES: MALPARTIDA CCOPA, KEVIN. ZEBALLOS HUAMN LUZ M.

UNIVERSIDAD NACIONAL TECNOLGICA DEL CONO SUR DE LIMA

CONSTRUCTORES Y DESTRUCTORES
1. CLASES Y OBJETOS: En los lenguajes orientados a objetos combinan en una sola unidad datos y funciones que operan con esos datos. Esas unidades son los objetos, que son el conjunto de atributos o datos. Como por ejemplo:

Clase Hombre Mamifero Animal Vertebrados. Araas

objetos Edad, dni, etc. Peso, color, etc. Peso, tamao, etc. Tamao, etc Tipo, longitud, etc.

Las clases son muy similares a los tipos de datos y equivalen a modelos o plantillas que describen como se construyen ciertos tipos de objetos. Las clases contienen la especificacin de datos que describen un objeto junto con la descripcin de las acciones que un objeto conoce ejecutar. Una clase es la descripcin de un conjunto de objetos. Consta de mtodos (funciones miembro) y datos o atributos que resumen caractersticas comunes de un conjunto de objetos. Sintaxis de objeto:

Nombre_clase identificador;

Ejm: Sea la clase de nombre Casa: El objeto se crea de esta manera: Casa objeto;

Constructores y Destructores

Pgina 1

UNIVERSIDAD NACIONAL TECNOLGICA DEL CONO SUR DE LIMA

Sintaxis de clase:
Class nombre { Public: //miembros pblicos Protected // miembros protegidos Private //miembros privados };

El especificador pblico public, define miembros pblicos, los cuales se puede acceder por cualquier funcin y clase. El especificador privado private solo se puede acceder por funciones miembros de la misma o por clases amigas. El especificador protegido protected se encuentra en el medio de pblico y privado. Se puede acceder a este mediante herencias. La funcin miembro o mtodos son funciones que se incluyen dentro de la definicin de una clase y pueden ser de los siguientes tipos: Constructores y Destructores: funciones miembro a las que se llama automticamente cuando un operador se crea o se destruye. Selectores: Devuelve los valores de los miembros datos. Modificadores o mutadores: Permite a un programa cliente cambiar los contenidos de los miembros dato. Operadores: Permiten definir operadores estndar C++ para los objetos de las clases. Iteradores: Procesan colecciones de objetos, tales como arrays y listas.

Constructores y Destructores

Pgina 2

UNIVERSIDAD NACIONAL TECNOLGICA DEL CONO SUR DE LIMA

2. CONSTRUCTOR: El objetivo de todo constructor es el de inicializar los objetos, cuando son creados. Se utiliza para crear tablas de mtodos virtuales y poder as desarrollar el polimorfismo, una de las herramientas de la programacin orientada a objetos (POO). Al utilizar un constructor, el compilador determina cul de los objetos va a responder al mensaje (virtual) que hemos creado. Tiene un tipo de acceso, un nombre y un parntesis. En java es un mtodo especial dentro de una clase, que se llama automticamente cada vez que se crea un objeto de esa clase. Posee el mismo nombre de la clase a la cual pertenece y no puede regresar ningn valor (ni siquiera se puede especificar la palabra reservada void). Por ejemplo si aadiramos a la clase Suma un constructor, tendramos que llamarlo tambin Suma. Cuando en una clase no se escribe propiamente un constructor, java asume uno por defecto (que es el Constructor vaco, es decir sin parmetros). 2.1. Constructor por defecto: Un constructor por defecto es un constructor sin parmetros que no hace nada. Sin embargo ser invocado cada vez que se construya un objeto sin especificar ningn argumento, en cuyo caso el objeto ser iniciado con los valores predeterminados por el sistema (los atributos numricos a ceros, los alfanumricos a nulos, y las referencias a objetos a null). 2.2. Constructor con Parmetros: Un constructor con Parmetros siempre debe especificar algn argumento, en cuyo caso el objeto ser iniciado con los valores indicados por el usuario, y realizar tambin las acciones programadas al ejecutarse. 3. Destructor: Un destructor en algunos lenguajes de programacin orientados a objetos es un mtodo de una clase que se llama justo antes de una instancia de esa clase y se elimina de la memoria. No todos los lenguajes de programacin orientados a objetos suelen tener un destructor. La contrapartida de un destructor es un constructor que se ejecuta cuando se crea el objeto, se instancia y se lo inicializa.

Constructores y Destructores

Pgina 3

UNIVERSIDAD NACIONAL TECNOLGICA DEL CONO SUR DE LIMA

Ejm:
#include<iostream.h> #include<conio.h> #include<stdio.h> class Sumar { private: int S; public: Sumar(){S=4;} / /constructor int SumarDiagonal(int n); ~Sumar(){} //destructor }; int Sumar::SumarDiagonal (int n) { int i,j,A[50][50]; int k=3,m=3; for(i=0; i<n; i++) { for(j=0;j<n;j++) { gotoxy(k,m); cin>>A[i][j]; k+=5; } m+=2; k=3; } for(i=0; i<n; i++) { for(j=0;j<n;j++) { if(i==j) { S+=A[i][j]; } } } return S;

Constructores y Destructores

Pgina 4

UNIVERSIDAD NACIONAL TECNOLGICA DEL CONO SUR DE LIMA

return S; } int main() { Sumar Matriz; int dim; cout<<"Ingrese la dimension de la matriz cuadrada: "; cin>>dim; cout<<"\n\nLa suma de la diagonal principal es: "<<Matriz.SumarDiagonal(dim); cout<<"\n\nPresione una tecla para salir."; getch(); }

Constructores y Destructores

Pgina 5

UNIVERSIDAD NACIONAL TECNOLGICA DEL CONO SUR DE LIMA Ejm.

#include<iostream.h> #include<conio.h> class factorial { private: int fact; public: factorial(){fact=1;} int hallar(int n); ~factorial(){} }; int factorial::hallar (int n) { int i; for(i=1; i<=n; i++) { fact*=i; } return fact; } int main() { factorial obj; //objeto int a; cout<<"Ingrese el factorial: "; cin>>a; cout<<"El factorial de "<<a<<" es: "<<obj.hallar(a); getch(); }

//constructor //destructor

Constructores y Destructores

Pgina 6

UNIVERSIDAD NACIONAL TECNOLGICA DEL CONO SUR DE LIMA

CONCLUSIONES

El constructor asigna una parte de memoria mientras que el destructor libera la memoria cuando el objeto se deja de utilizar. Se llama constructor de oficio al constructor por defecto que define automticamente el compilador si el usuario no define ningn constructor.

Constructores y Destructores

Pgina 7

UNIVERSIDAD NACIONAL TECNOLGICA DEL CONO SUR DE LIMA

BIBLIOGRAFA
Programacion en C++ un enfoque prctico, Luiz Joyanes Aguilar, Lucas Sanchez Garca

WEBGRAFA
http://www.nebrija.es/~abustind/Informatica/MetodologiaII/Constructor_copia.pdf http://msdn.microsoft.com/es-es/library/2z08e49e(v=vs.90).aspx http://gl-epn-programacion-ii.blogspot.com/2010/03/constructor-y-destructor.html

Constructores y Destructores

Pgina 8

S-ar putea să vă placă și