Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Asignación Dinámica | Asignación Dinámica de Memoria
Punteros y Referencias en C++
Sección 4. Capítulo 2
single

single

bookAsignación Dinámica

Desliza para mostrar el menú

La asignación dinámica de memoria implica el uso de los operadores new y delete. Estos operadores permiten asignar memoria para variables y arreglos en tiempo de ejecución, proporcionando mayor flexibilidad que la asignación estática de memoria.

  • new: operador que se utiliza para asignar dinámicamente memoria para un objeto o un arreglo de objetos durante el tiempo de ejecución;

  • delete: operador que se utiliza para liberar la memoria que fue previamente asignada con el operador new.

Note
Nota

Un puntero que apunta a memoria asignada dinámicamente normalmente se almacena en la pila, pero la memoria a la que apunta se asigna en el montón.

Para crear una variable entera de forma dinámica, se debe utilizar un puntero junto con la palabra clave new.

int *dynamicInteger = new int;

Para liberar la memoria asignada dinámicamente, se utiliza el operador delete:

delete dynamicInteger;

Establezca como regla: cuando utilice new para asignar memoria, siempre utilice delete para liberarla posteriormente.

Arreglos asignados dinámicamente

Al asignar memoria para arreglos de forma dinámica, utilice el operador new[], y al liberar la memoria de arreglos asignados dinámicamente, utilice el operador delete[].

Note
Nota

No eliminar la memoria asignada dinámicamente puede provocar fugas de memoria, donde el programa retiene memoria que ya no está en uso.

Tarea

Desliza para comenzar a programar

Imagina que trabajas como docente y necesitas calcular el promedio de calificaciones de un grupo de estudiantes.

También trabajarás con punteros y funciones que manipulan arreglos asignados dinámicamente.

  1. Crear un arreglo asignado dinámicamente grades para almacenar las calificaciones de los estudiantes.
  2. Utilizar la función fillRandomGrades para llenar el arreglo con calificaciones aleatorias entre 60 y 100.
  3. Completar la función calculateAverage para que:
    • Inicialice la variable sum en 0.
    • Recorra el arreglo utilizando un ciclo for.
    • Sume cada calificación a sum.
    • Devuelva el promedio dividiendo el total de sum entre el número de estudiantes.
  4. Recordar liberar la memoria asignada usando delete[] al final del programa para evitar fugas de memoria.

Solución

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 2
single

single

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

some-alt