2023 Autor: Luke Adderiy | [email protected]. Zuletzt bearbeitet: 2023-05-24 11:27
Die Verwendung von const ist aus mehreren Gründen nützlich: Es beantragt die Hilfe des Compilers, um sicherzustellen, dass Werte, die nicht geändert werden sollten, nicht geändert werden (der Compiler gibt einen Fehler aus, wenn Sie versuchen, wie im obigen Beispiel). Es teilt dem Programmierer mit, dass die Funktion den Wert des Arguments nicht ändert. Dies kann beim Debuggen helfen.
Warum übergeben wir eine konstante Referenz?
Wir übergeben die const-Referenz um eine Kopie des Objekts zu vermeiden. Wenn Sie eine const-Referenz übergeben, übergeben Sie einen Zeiger (Referenzen sind Zeiger mit zusätzlichem Zucker, damit sie weniger bitter schmecken). Und natürlich vorausgesetzt, das Objekt ist trivial zu kopieren.
Welchen Vorteil bietet die Deklaration des Parameters als const-Referenz?
Referenzen, die als Funktionsparameter verwendet werden, können auch konstant sein. Dies ermöglicht es uns, auf das Argument zuzugreifen, ohne eine Kopie davon zu erstellen, während garantiert wird, dass die Funktion den Wert, auf den verwiesen wird, nicht ändert.
Wie übergebe ich eine const-Referenz?
Wenn Sie eine const-Referenz übergeben, übernehmen Sie das Argument als Referenz (um keine Kopien davon zu erstellen), können aber keine Änderungen am ursprünglichen Objekt vornehmen (ähnlich wie würde passieren, wenn Sie die Parameter als Wert übernehmen würden).
Warum übergeben oder geben wir Variablen per const zurück ?
Die Übergabe eines Parameters per konstanter Referenz sollte dort gewählt werden, wo die Semantik von Referenzen tatsächlich erforderlich ist, oder als Performance-Verbesserung nur dann, wenn die Kosten für ein mögliches Aliasing dadurch aufgewogen würden Kosten für das Kopieren des Parameters. Um eine unnötige Kopie zu vermeiden und so die Leistung zu verbessern.
C++-Übergabeparameter als Const-Referenz
C++ Passing Parameter as Const Reference
