🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Nutzen von 'new' ?

#589
From: Michael Strauch
Date: Mon, 16 Oct 1995 17:21
44 lines
2498 bytes
Kaspar Landsberg (kl@kl.in-berlin.de) wrote:

> ich verstehe nicht ganz die Benutzung und den Nutzen von "new". Ohne new  
> wird z.B. Speicher fuer ein Array beim Kompilieren bereitgestellt;

nicht beim Compilieren, sondern beim Start des compilierten Programms,
und zwar genau so viel, wie Du zur Compilierzeit festgelegt hast. 

> mit new  
> erst beim Ausfuehren des Programms. Was heisst das?

Das heisst, das der Speicher nicht beim Programmstart bereitgestellt wird,
sondern erst, wenn die Anweisung "new" ausgefuehrt wird.

> Wie kann denn fuer  
> etwas schon bei der Kompilation Speicher bereitgestellt werden?? Ein  
> Programm verbraucht doch erst Speicher, wenn es ausgefuehrt wird... oder  
> nicht?

> Wo ist also der Vorteil von 'new' ?

Mit new kannst Du Speicher dynamisch anfordern, d. h. erst zur Laufzeit des
Programms wird festgelegt, wieviel Speicher wirklich geholt wird
(das kann zum Beispiel von den Eingaben abhaengen, die Deine Anwender
machen). Wenn Du Datenstrukturen wie Listen, Baume oder Aehnliches anlegen
willst, deren Groesse und Struktur zur Compilierzeit noch nicht festliegt,
kommst Du um "new" fast nicht herum. Versuch mal, eine Baumstruktur
zu programmieren in C++ zu programmieren, dann erledigt sich Deine Frage
sicher von selbst.

Man kann sich natuerlich immer um "new" (oder "malloc") herumdruecken,
indem man von den Datenstrukturen, die man so benoetigt, ein hinreichend
grosses Array anlegt, und selber verwaltet, welche Teile des Arrays schon
belegt wurden und welche noch frei sind, aber wozu solch ein Aufwand,
wenn das Laufzeitsystem einem mittels "new" diese Arbeit abnimmt?

- Michael -

--
***************************************************************************
*   Michael Strauch            *  email:                                  *
*   University of Dortmund     *  strauch@emmy.mathematik.uni-dortmund.de *
*   Department of Mathematics  *                                          *
***************************************************************************
Technical Details
Message-ID: <45u4ab$7bk@nx2.hrz.uni-dortmund.de>
Path: arc1-ca.pugleaf.net!Uni-Dortmund.DE!strauch
References: <5vtCiAjKhjB@kl.in-berlin.de>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!Uni-Dortmund.DE!strauch
From: strauch@emmy.mathematik.uni-dortmund.de (Michael Strauch)
Newsgroups: de.comp.lang.c++
Subject: Re: Nutzen von 'new' ?
Date: 16 Oct 1995 17:21:15 GMT
Organization: HRZ, University of Dortmund, Germany
Message-ID: <45u4ab$7bk@nx2.hrz.uni-dortmund.de>
References: <5vtCiAjKhjB@kl.in-berlin.de>
NNTP-Posting-Host: emmy.mathematik.uni-dortmund.de
X-Newsreader: TIN [version 1.2 PL2]