Objekt anlegen
-
Hallo,
in C sharp legt man ein neues Objekt so an
z.B. Circle meinKreis = new Circle();
in C++ ginge das viel kürzer: Circle meinKreis();
Also warum so viel Schreibaufwand in C sharp ?
-
C# hat einen Garbage Collector weshalb man sehr viel mit new machen kann ohne sich um die Speicherfreigabe Sorgen machen zu müssen.
Folglich verlangt die Sprache dieses Vorgehen auch oft ab, da es einfach zum Sprachkonzept gehört.
-
C#:
Circle meinKreis = new Circle();
C++:
Circle* meinKreis = new Circle;
delete mneinKreis;
-
@blurry333: hör doch auf, dich über C# gegenüber C++ zu beklagen. Es sind zwei verschiedene Sprachen - also belass es dabei.
-
blurry333 schrieb:
in C++ ginge das viel kürzer: Circle meinKreis();
Das ist in C++ kein Konstruktoraufruf sondern hier wird eine parameterlose Funktion "meinKreis" deklariert, die ein Objekt vom Typ Circle zurückliefert.
-
Und gerade diesen Anfängerfehler (in C++) kann man bei C# eben nicht begehen, da es dort immer nur die eine Schreibweise mittels 'new' gibt!
-
war mir bislang nicht bewußt