🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.lang.c++
Article #613

Re: Nutzen von 'new' ?

#613
From: Siegfried Langbein
Date: Mon, 16 Oct 1995 17:39
42 lines
2615 bytes
am 15.10.95 toastete Kaspar Landsberg unter anderem in die de.comp.lang.c++....

Hi all, Hi Kaspar,

k> ich verstehe nicht ganz die Benutzung und den Nutzen von "new". Ohne new
k> wird z.B. Speicher fuer ein Array beim Kompilieren bereitgestellt; mit new
k> erst beim Ausfuehren des Programms. Was heisst das? Wie kann denn fuer
k> etwas schon bei der Kompilation Speicher bereitgestellt werden?? Ein
k> Programm verbraucht doch erst Speicher, wenn es ausgefuehrt wird... oder
k> nicht?
k> Wo ist also der Vorteil von 'new' ?

Ich bin zwar kein Profi, aber wenn du programmieren willst, solltest du
den Unterschied schon verstehen, Speicherverwaltung ist so grundlegend wie
Ein/Ausgabefunctionen.
Speicher zur Compilezeit anfordern, heißt für Global Variable, der
Compiler erzeugt ein Datensegment, indem der Speicherplatz für die
Variablen bereitgestellt wird; bei DOS/Win Programmen sind die dann Teil
der .Exe und mit Nullen gefüllt, kann man gut im HexEditor sehen und
deswegen werden ExeFiles auch so gut durch PKZip etc. komprimiert.
Bei lokalen Variablen wird zur Laufzeit der Platz auf dem Stack erzeugt.
Beide Methoden sind begrenzt und man muss sich zur Compilzeit festlegen
.
Bei new wird der Speicherplatz während der Laufzeit dynamisch vom System
angefordert, welches unter umständen auf Gigabytes von Mem zurückgreifen
kann und man ist nicht festgelegt - man kann zum Beispiel Speicher
anfordern wenn eine Bedingung erfüllt ist und es lassen, wenn die
Bedingung nicht erfüllt ist
Zum Bleistift kann man in einer for Schleife Schauen ob es Dateien gibt,
die eine bestimmte Bedingung erfüllen, als Ergebnis können es meinetwegen
0 bis 10000 Dateien sein, weiss man vorher nicht. Mit new kann man für
jede gefundene Datei Speicher anfordern und den Namen reinschreiben zwecks
weiteren Verwendung.
Das nennt man dynamische Speicherverwaltung, hat natürlich mehr Denk und
Schreibaufwand, den sollte man ja auch wieder freigeben etc.
Tschaui...


-- Ach ja, ich bin noch auf der Suche nach SourceCode für einen möglichst
-- intelligenten, künstlichen Gesprächspartner; einfach aus Neugierde !
--
-- Maus Goettingen                     * _@Goe_
Technical Details
Message-ID: <199510161939.a10202@goe.maus.de>
Path: arc1-ca.pugleaf.net!gOe.maus.de!Siegfried_Langbein
References: <5vtCiAjKhjB@kl.in-berlin.de>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!gOe.maus.de!Siegfried_Langbein
From: Siegfried_Langbein@gOe.maus.de (Siegfried Langbein)
Newsgroups: de.comp.lang.c++
Subject: Re: Nutzen von 'new' ?
Message-ID: <199510161939.a10202@goe.maus.de>
Date: Mon, 16 Oct 95 17:39:00 GMT
References: <5vtCiAjKhjB@kl.in-berlin.de>
X-Gate: MausGate/News 1.25/mausgoe
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit