Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

11

28.02.2011, 20:16

Nun, ob ein Objekt verändert werden kann, sollte primär an der Signatur der Funktion erkennbar sein. Hieran wird ja z. B. entschieden welche Methode eines Objektes aufgerufen wird (Stichwort: const-correctness).

es geht mir einfach darum, dass man sich mehr gedanken darüber macht was mit den daten passieren kann wenn man einen zeiger übergibt. eine referenz wird übergeben ohne, dass man darüber nachdenken muss. es gibt sicher momente wo man eine referenz übergibt ohne es zu wissen und sich wundert, dass die daten anders sind als man erwartet. wenn ich das auch nur einmal verhindern kann stunden lang zu suchen nehm ich es in kauf manuell zu dereferenzieren.

Meistens ist es viel praktischer, den Wert, den eine reine Get-Funktion liefern soll, mittels return und ganz ohne Referenzen/Zeiger zu übergeben, so läuft man auch nicht Gefahr, dass NULL übergeben wird, wenn es eigentlich nicht erlaubt ist.

ich hoffe du meinst damit nicht, dass man keine referenz zurück geben darf/sollte. bei manchen methoden macht das durchaus sinn^^
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

BurningWave

Alter Hase

Beiträge: 1 106

Wohnort: Filderstadt/Konstanz

Beruf: Student

  • Private Nachricht senden

12

28.02.2011, 20:54

ich hoffe du meinst damit nicht, dass man keine referenz zurück geben darf/sollte. bei manchen methoden macht das durchaus sinn

Stimmt schon, z.B. wenn man große Objekte zurückgibt, aber ich denke trotzdem, dass man damit nicht übertreiben sollte (vor allem sollte man nicht eine Referenz auf ein lokales Objekt zurückgeben).