implementacion smart pointers

10/03/2005 - 21:01 por egcito | Informe spam
hola a todos!

estoy trabajando con c++ (standard) y necesitaria una buena implementacion
de "smart pointers" (especificamente contenedores de punteros con liberacion
automatica de memoria); si la misma no incluye un framework quilmetrico de
clases mejor

estuve viendo algunas opciones como "auto_ptr" de la stl, pero con algunas
comprobaciones noto que no cumple con todos los requerimientos.. (por
cierto, no entiendo por que en VC no funciona el intellisense con este
template)

luego vi "shared_ptr" de boost pero me implica bajar una lista de clases
adicionales y no se si se justifica

lamentablemente no puedo trabajar con clases propias de MS (MFC, etc, etc.)
puesto que luego necesito compilar el codigo en un servidor aix

cualquier link o ayuda sera bienvenida.

desde ya mil gracias!!

saludos

egcito

Preguntas similare

Leer las respuestas

#1 Isidro Muñoz
10/03/2005 - 22:27 | Informe spam
Buenas,

segun tu ¿ que es lo debe de hacer un smart pointers ?

Lo mas basico es crear un template donde tengas un puntero a lo que quieres,
y que el destructor haga el delete. Evidentemente tendras que hacer una
sobrecarga de operadores como mínimo del ->

Saludos.
Isidro.


"egcito" escribió en el mensaje
news:

hola a todos!

estoy trabajando con c++ (standard) y necesitaria una buena implementacion
de "smart pointers" (especificamente contenedores de punteros con


liberacion
automatica de memoria); si la misma no incluye un framework quilmetrico de
clases mejor

estuve viendo algunas opciones como "auto_ptr" de la stl, pero con algunas
comprobaciones noto que no cumple con todos los requerimientos.. (por
cierto, no entiendo por que en VC no funciona el intellisense con este
template)

luego vi "shared_ptr" de boost pero me implica bajar una lista de clases
adicionales y no se si se justifica

lamentablemente no puedo trabajar con clases propias de MS (MFC, etc,


etc.)
puesto que luego necesito compilar el codigo en un servidor aix

cualquier link o ayuda sera bienvenida.

desde ya mil gracias!!

saludos

egcito

Respuesta Responder a este mensaje
#2 Rodrigo Corral [MVP]
10/03/2005 - 22:58 | Informe spam
Sin duda los de boost son los mejores. Usar boost, aunque sean un monton de
.h no va añadir mucho peso a tu programa puesto que solo se compilara
aquello que uses. Yo no me lo pensaria. Desde luego la ultima opción creo
que es hacertelo tu.

http://www.codeproject.com/vcpp/stl...artptr.asp


Un saludo
Rodrigo Corral González [MVP]

FAQ de microsoft.public.es.vc++
http://rcorral.mvps.org
Respuesta Responder a este mensaje
#3 egcito
11/03/2005 - 15:43 | Informe spam
gracias rodrigo!

saludos

egcito

"Rodrigo Corral [MVP]" escribió:

Sin duda los de boost son los mejores. Usar boost, aunque sean un monton de
..h no va añadir mucho peso a tu programa puesto que solo se compilara
aquello que uses. Yo no me lo pensaria. Desde luego la ultima opción creo
que es hacertelo tu.

http://www.codeproject.com/vcpp/stl...artptr.asp


Un saludo
Rodrigo Corral González [MVP]

FAQ de microsoft.public.es.vc++
http://rcorral.mvps.org



Respuesta Responder a este mensaje
#4 egcito
11/03/2005 - 15:43 | Informe spam
hola isidro!

gracias por responder

en parte es lo que tu dices pero existen unas cuantas otras situaciones...
por ejemplo, no se podria liberar el puntero al destruirse la clase si existe
alguna referencia adicional al mismo, etc etc etc etc... y justamente no
queria armar algo yo a mano con todo esto...

salu2!!

egcito

"Isidro Muñoz" escribió:

Buenas,

segun tu ¿ que es lo debe de hacer un smart pointers ?

Lo mas basico es crear un template donde tengas un puntero a lo que quieres,
y que el destructor haga el delete. Evidentemente tendras que hacer una
sobrecarga de operadores como mínimo del ->

Saludos.
Isidro.


"egcito" escribió en el mensaje
news:
>
> hola a todos!
>
> estoy trabajando con c++ (standard) y necesitaria una buena implementacion
> de "smart pointers" (especificamente contenedores de punteros con
liberacion
> automatica de memoria); si la misma no incluye un framework quilmetrico de
> clases mejor
>
> estuve viendo algunas opciones como "auto_ptr" de la stl, pero con algunas
> comprobaciones noto que no cumple con todos los requerimientos.. (por
> cierto, no entiendo por que en VC no funciona el intellisense con este
> template)
>
> luego vi "shared_ptr" de boost pero me implica bajar una lista de clases
> adicionales y no se si se justifica
>
> lamentablemente no puedo trabajar con clases propias de MS (MFC, etc,
etc.)
> puesto que luego necesito compilar el codigo en un servidor aix
>
> cualquier link o ayuda sera bienvenida.
>
> desde ya mil gracias!!
>
> saludos
>
> egcito
>




email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida