new que realiza una labor parecida a la de la función malloc(),
asignando un bloque de memoria.
delete que libera un bloque de memoria asignada en tiempo de
ejecución, de manera semejante a como lo hace free().
#include <iostream.h>
void main()
{
int *apent; // Declara un apuntador a entero
apent = new int ; // Reserva un bloque de memoria dinámica
// de 2 bytes para manejarlo por medio
// de apent.
*apent = 10 ; // Asigna el valor 10 al objeto apuntado
// por apent.
cout << *apent ; // Despliega el contenido del objeto // apuntado por apent. delete apent ; // Libera el espacio de memoria manejado // por apent. }
#include <iostream.h>
#include <stdlib.h> // Para exit().
void main()
{
int *apent; // Declara un apuntador a entero
if((apent = new int)==NULL)// Intenta reservar un bloque de
{ // memoria dinámica de 2 bytes ra
// manejarlo por medio de apent.
cout << "NO hay espacio suficiente\n"; exit(1); // Finaliza la ejecución del programa. } *apent="10" ; // Asigna el valor 10 al objeto apuntado // por apent. cout << *apent ; // Despliega el contenido del objeto // apuntado por apent. delete apent ; // Libera el espacio de memoria manejado // por apent. }
double* dap ; dap = new double[25];
double* dap = new double[25];
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
void main()
{
unsigned int n;
clrscr();
gotoxy(20,1);
cout << "NUMERO DE ELEMENTOS DEL ARREGLO: "; cin>> n;
float* apf;
if((apf=new float[n])==NULL)
{
cout << "NO HAY ESPACIO SUFICIENTE EN EL MONTICULO\N"; exit(1); } for(int x="0" ; x < n ; x++) { gotoxy(20,x+3); *(apf+x)="x+100.25;" cout << *(apf+x) << "\n"; } delete apf; getch(); }
| Página siguiente |