🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #18566

Re: PROBLEMA DE MEMORIA

#18566
From: Ignacio Arenaza
Date: Tue, 10 Aug 1999 00:00
45 lines
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-mail
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>

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