0 évaluation0% ont trouvé ce document utile (0 vote)
17 vues10 pages
El documento habla sobre constructores y destructores en POO. Explica que los constructores se usan para inicializar variables y asignar memoria dinámica, mientras que los destructores se usan para liberar la memoria asignada. También muestra ejemplos de cómo definir constructores y destructores en una clase y cómo asignar y liberar memoria dinámica usando new y delete.
El documento habla sobre constructores y destructores en POO. Explica que los constructores se usan para inicializar variables y asignar memoria dinámica, mientras que los destructores se usan para liberar la memoria asignada. También muestra ejemplos de cómo definir constructores y destructores en una clase y cómo asignar y liberar memoria dinámica usando new y delete.
El documento habla sobre constructores y destructores en POO. Explica que los constructores se usan para inicializar variables y asignar memoria dinámica, mientras que los destructores se usan para liberar la memoria asignada. También muestra ejemplos de cómo definir constructores y destructores en una clase y cómo asignar y liberar memoria dinámica usando new y delete.
UD-TSD-FT (week 3) Funciones constructoras y destructoras
Ing. Héctor Julio Fúquene Ardila M.Sc. 2020 U. D.
Problema • Si POO me dice que no inicialice las variables en bloque private, entonces en donde lo hago? //int x; • Cómo hago para crear arreglos dinámicos? • Int x=0; //Es fundamental en campos de resultado
Ing. Héctor Julio Fúquene Ardila M.Sc. 2020 U. D.
Constructores y destructores • Constructores • Destructores • Es una función(método) • Es una función(método) • Tiene el mismo nombre de la clase • Tiene el mismo nombre de la clase (~) • Se declara, se define, No se… • Se declara, se define, No se… • Es la primer en ejecutarse • Es la última en ejecutarse • Puede tener parámetros • No tiene parámetros • No retorna valor • No retorna valor • Se ejecuta al declarar el objeto •S • Se utiliza para inicializar las variables •S • Se utiliza para asignar memoria • Se utiliza para liberar memoria dinámica dinámica
Asignación de memoria dinámica • Arreglos estáticos (int a[10];) Vs • class Numeros{ Arreglos dinámicos (int *a;) • private: • Consiste en permitir construir • int *a, *b,aux,i,j,n; ‘arreglos’ en tiempo de ejecución. • public: • La asignación se hace en el • Numeros(); constructor • ~Numeros(); • La liberación se hace en el • void Entrada(void); destructor • void Proceso(void); • Se debe utilizar apuntadores (*, &) • void Salida(void); • Se utilizan los operadores new y • }; delete Ing. Héctor Julio Fúquene Ardila M.Sc. 2020 U. D. Memoria dinámica • • Numeros::Numeros() { • Numeros::~Numeros() • • cout<<“ \n Construyendo números”<<endl; aux=pr=i=j=n=0; •{ • • cout<<“ \n Digite el tamaño del arreglo..”<<endl; cin>>n; • cout<<“ \n Destruyendo • a=new int [n]; números”<<endl; • • delete a; //a,b deben se if(a==NULL) • cout<<“Error en asignación de memoria dinámica 1 …”<<endl; • b=new int [n]; punteros • if(b==NULL) • cout<<“Error en asignación de memoria dinámica 2 … ”<<endl; • delete b; • for(i=0;i<10;i++){ • a[i]=0; • } //txt b[i]=0;} • }