Const correctness
Hi,
ich beschäftige mich gerade mit einem C++-Projekt und habe schon ein paar Artikel zu const correctness gelesen, doch nun eine grundlegende Frage.
Const correctness sorgt für einen sauberen Stil, Compileroptimierungen usw. Doch wie genau setzt man "const &" bzw "const *" ein?
Bei zum Beispiel einer Funktion, die nur Settings aus einer Datei lesen soll:
int readSettings(std::string path) {...}
wobei der Rückgabewert ein Code für Erfolg/Misserfolg ist, wo muss nun "const &"/"const *" hin? Wäre folgendes korrekt:
int const & readSettings(std::string const & path)
oder braucht man gar nicht so viele "const" und "&" ? Vor allem beim "&" des Rückgabewertes bin ich mir nicht sicher: Ein Zeiger auf einen konstanten int? Eigentlich ist hier der Adress-Operator doch nicht nötig, oder?
Würde mich über ein paar Tipps sehr freuen,
danke!
Martin
ich beschäftige mich gerade mit einem C++-Projekt und habe schon ein paar Artikel zu const correctness gelesen, doch nun eine grundlegende Frage.
Const correctness sorgt für einen sauberen Stil, Compileroptimierungen usw. Doch wie genau setzt man "const &" bzw "const *" ein?
Bei zum Beispiel einer Funktion, die nur Settings aus einer Datei lesen soll:
int readSettings(std::string path) {...}
wobei der Rückgabewert ein Code für Erfolg/Misserfolg ist, wo muss nun "const &"/"const *" hin? Wäre folgendes korrekt:
int const & readSettings(std::string const & path)
oder braucht man gar nicht so viele "const" und "&" ? Vor allem beim "&" des Rückgabewertes bin ich mir nicht sicher: Ein Zeiger auf einen konstanten int? Eigentlich ist hier der Adress-Operator doch nicht nötig, oder?
Würde mich über ein paar Tipps sehr freuen,
danke!
Martin
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 171367
Url: https://administrator.de/contentid/171367
Ausgedruckt am: 16.11.2024 um 13:11 Uhr