elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ventajas de del uso de new ?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ventajas de del uso de new ?  (Leído 1,983 veces)
HardForo

Desconectado Desconectado

Mensajes: 219


HardForo.com


Ver Perfil WWW
Ventajas de del uso de new ?
« en: 27 Abril 2016, 15:14 pm »

Eso mismo, quisiera saber cuales son las ventajas siendo que en C++ no es necesario realmente para instanciar clases por ejemplo


« Última modificación: 28 Abril 2016, 00:55 am por boctulus » En línea

HardForo:  foro de Hardware y programación

Se buscan Mods y colaboradores *
class_OpenGL


Desconectado Desconectado

Mensajes: 437

Si usas Direct3D, no eres mi amigo :P


Ver Perfil
Re: Ventajas de del uso de new ?
« Respuesta #1 en: 27 Abril 2016, 16:04 pm »

Se usa new para reservar memoria dinámica. No tienen que ser para un objeto, puedes reservar memoria para un entero (por ejemplo, int* variable = new int). En C++, sin embargo, hay un conjunto de librerías llamado STL, la cual te permite manejar la memora dinámica de forma mucho más cómoda.

 - La ventaja del operador new sobre la STL es que new es muy general, y lo puedes usar para crear cosas muy específicas. La desventaja es que luego tienes que liberar la memoria con delete o con delete[].

 - La ventaja de usar la STL frente al operador new es que es muchísimo más cómodo manejar la memoria dinámica, porque ya tienes los métodos definidos. Por ejemplo, para crear una lista doblemente enlazada puedes usar la clase std::list. Esta clase tiene estos métodos (entre otros): push_back, push_front, pop_back, pop_front, insert, erase... Con estos métodos es mucho más cómodo trabajar y encima no te tienes que preocupar por liberar la memoria, puesto que al salir de una función se llama al destructor y la memoria se libera automáticamente.


En línea

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL
HardForo

Desconectado Desconectado

Mensajes: 219


HardForo.com


Ver Perfil WWW
Re: Ventajas de del uso de new ?
« Respuesta #2 en: 27 Abril 2016, 16:08 pm »

Amigo @class_OpenGL primero que todo gracias por responder  ;)

Investigaré lo que me dices pero cuando haces new int por ejemplo definitivamente estas creando un objeto wrapper sobre un entero, al menos eso leí sobre boxing y unboxing en C# y Java.

Me sirve que me hayas confirmado que delete solo es obligatorio si tienes punteros y es la razon de que exista un destructor (~) : te da la posibilidad de usar delete al terminar la instancia.

Nuevamente gracias
En línea

HardForo:  foro de Hardware y programación

Se buscan Mods y colaboradores *
HardForo

Desconectado Desconectado

Mensajes: 219


HardForo.com


Ver Perfil WWW
Re: Ventajas de del uso de new ?
« Respuesta #3 en: 27 Abril 2016, 16:39 pm »

Citar
La ventaja de usar la STL frente al operador new es que es muchísimo más cómodo manejar la memoria dinámica, porque ya tienes los métodos definidos. Por ejemplo, para crear una lista doblemente enlazada puedes usar la clase std::list. Esta clase tiene estos métodos (entre otros): push_back, push_front, pop_back, pop_front, insert, erase... Con estos métodos es mucho más cómodo trabajar y encima no te tienes que preocupar por liberar la memoria, puesto que al salir de una función se llama al destructor y la memoria se libera automáticamente.

Me parecia....... porque cuando he usado colas no vi que hubiera forma de liberar manualmente la memoria

Otro buen dato  ;)
En línea

HardForo:  foro de Hardware y programación

Se buscan Mods y colaboradores *
class_OpenGL


Desconectado Desconectado

Mensajes: 437

Si usas Direct3D, no eres mi amigo :P


Ver Perfil
Re: Ventajas de del uso de new ?
« Respuesta #4 en: 27 Abril 2016, 17:21 pm »

Si quieres consultar los métodos de cualquier clase estándar de C++ puedes mirar esta página:

http://www.cplusplus.com/reference/
En línea

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
que ventajas tiene?
Multimedia
kriptiko 3 2,513 Último mensaje 26 Abril 2004, 19:28 pm
por Songoku
Ventajas y Desventajas
Electrónica
:ohk<any> 1 19,239 Último mensaje 15 Mayo 2008, 21:41 pm
por skapunky
Descubre las ventajas que ofrecen los dispositivos PLC
Noticias
wolfbcn 0 1,448 Último mensaje 10 Febrero 2018, 15:45 pm
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines