Hi,
Ich habe mich jetzt eine längere Zeit mit C++ beschäftigt und habe schon recht Solide Fähigkeiten im Umgang mit der Sprache erlangen können. Nun bin ich grade dabei zusätzlich noch C# zu lernen, da wir dies balt in der Schule machen werden.
Ich arbeite hierzu grade ein recht Umfangreiches Galileobuch durch. Hier wird ganz am Anfang erwähnt, dass C# im Gegensatz zu C++ vor Memoryleaks geschützt ist. Auch mein ich gelesen zu haben, dass Zeiger/Pointer komplett wegfallen
Nun sehe ich so etwas aber ständig im Buch:
C# Code:
Wird hier nicht ein räumlich und temporär unbegrenzter Speicherraum festgelegt, dessen Adresse in "kreis" gespeichert wird?
In C++ würde so etwas ja so aussehen:
C++ Code:
Wenn es stimt und man mit
C# Code:
tatsächlich Speicher reserviert dann können doch auch in C# Memoryleaks auftreten. Wenn man sich sehr viele Instanzen erzeugen würde ohne den Speicher wieder freizugeben.. Es sei denn, das Programm würde Anfangen irgendwann diese Speichrbereiche wieder von alleine Freizugeben wenn die Gefahr eines Vollgeschriebenen SPeichers besteht aber dies kann ja auch nicht sein, da ja nicht bekannt sein kann ob der Speicher nun noch gebreuacht wird oder nicht..
Ich würde mich über Hilfe freuen
Ich habe mich jetzt eine längere Zeit mit C++ beschäftigt und habe schon recht Solide Fähigkeiten im Umgang mit der Sprache erlangen können. Nun bin ich grade dabei zusätzlich noch C# zu lernen, da wir dies balt in der Schule machen werden.
Ich arbeite hierzu grade ein recht Umfangreiches Galileobuch durch. Hier wird ganz am Anfang erwähnt, dass C# im Gegensatz zu C++ vor Memoryleaks geschützt ist. Auch mein ich gelesen zu haben, dass Zeiger/Pointer komplett wegfallen
Nun sehe ich so etwas aber ständig im Buch:
C# Code:
Code:
Circle kreis = new Circle;
Wird hier nicht ein räumlich und temporär unbegrenzter Speicherraum festgelegt, dessen Adresse in "kreis" gespeichert wird?
In C++ würde so etwas ja so aussehen:
C++ Code:
Code:
Circle *kreis = NULL;
Circle kreis = new Circle;
Wenn es stimt und man mit
C# Code:
Code:
Circle kreis = new Circle;
tatsächlich Speicher reserviert dann können doch auch in C# Memoryleaks auftreten. Wenn man sich sehr viele Instanzen erzeugen würde ohne den Speicher wieder freizugeben.. Es sei denn, das Programm würde Anfangen irgendwann diese Speichrbereiche wieder von alleine Freizugeben wenn die Gefahr eines Vollgeschriebenen SPeichers besteht aber dies kann ja auch nicht sein, da ja nicht bekannt sein kann ob der Speicher nun noch gebreuacht wird oder nicht..
Ich würde mich über Hilfe freuen
Zuletzt bearbeitet: