Article View: es.comp.os.linux.programacion
Article #18566Re: PROBLEMA DE MEMORIA
From: Ignacio Arenaza
Date: Tue, 10 Aug 1999 00:00
Date: Tue, 10 Aug 1999 00:00
45 lines
2655 bytes
2655 bytes
>>>>> "franci72" == franci72 <franci72@iname.es> writes:
franci72> no se podia pedir memoria con new y liberarla con el
franci72> free o pedirla con el malloc y usar el delete para
franci72> liberarla, porque aunque en algunas implementaciones...
Esto es lo que dice Schildt y me parece correcto...
franci72> con malloc, podia no hacerlo. Y si lo piensas bien, si
franci72> todo el codigo C usa malloc, calloc, realloc y free ya
franci72> no podrias usarlo en C++ donde las la mayor parte de
franci72> clases estan plagaditas de new. Ahora razonando podemos
franci72> llegar a esta conclusi�n por reduccion al absurdo, si
franci72> metes algun trozo de codigo en C puro en un programa en
franci72> C++ (Se supone que debe funcionar o almenos a mi siempre
franci72> me ha funcionado si estaba bien hecho) ya no podrias
franci72> usar en ninguna ocasi�n new con lo cual, si 90% del
franci72> codigo en C que tienes usa malloc y el 90% del codigo en
franci72> C++ que tienes usa new, solo podrias usar un 10% de
franci72> alguno de los dos juntos. Por lo menos para mi llamar a
franci72> esto compatibilidad es absurdo.
Aqui te equivocas de medio a medio. Se puede mezclar malloc y new en
un programa en C++. Lo que no se puede es mezclar malloc con delete o
new con free. Es decir, si reservas con malloc tienes que liberar con
free (y no puedes hacerlo con delete), y si reservas con new tienes
que liberar con delete (y no con free). Esta es la unica restriccion y
lo que dice Schildt segun tu (ver mas arriba). Si respetas esto, tu
"compatibilidad" es del 100%.
De hecho, si lo que tu dices es cierto casi ningun programa hecho en
C++ podria funcionar en Unix/Linux. Porque todos ellos, antes o
despues, usan la libc, que esta hecha 100% en C y usa malloc por todos
los lados ;-)
franci72> Si me equivoco agradeceria que corrigiesis mi error.
Hecho!! ;-)
Saludos. I�aki.
--
PGP Key available at http://personales.jet.es/inaki.arenaza/pgpkey.html
Linux Registered User #44369
Technical Details
Message-ID:
<87k8r3n0sd.fsf@eb2ebu.ampr.org>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<37965935.58146EAA@redestb.es> <7njlu2$os8$1@diana.bcn.ttd.net> <379EE6C4.A48E9CD2@redestb.es> <37A81B48.C518775C@lg.ehu.es> <37aab38f.3283273@194.179.8.124>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: f86c8,b7bf25496a21e6c5 X-Google-Attributes: gidf86c8,public From: Ignacio Arenaza <inaki.arenaza@jet.es> Subject: Re: PROBLEMA DE MEMORIA Date: 1999/08/10 Message-ID: <87k8r3n0sd.fsf@eb2ebu.ampr.org> X-Deja-AN: 511111521 References: <37965935.58146EAA@redestb.es> <7njlu2$os8$1@diana.bcn.ttd.net> <379EE6C4.A48E9CD2@redestb.es> <37A81B48.C518775C@lg.ehu.es> <37aab38f.3283273@194.179.8.124> Organization: Servidor NNTP de eb2ebu.ampr.org Newsgroups: es.comp.os.linux.programacion