Sie möchten eine konstante Referenz zurückgeben wenn Sie eine Eigenschaft eines Objekts zurückgeben, das außerhalb davon nicht geändert werden soll. Beispiel: Wenn Ihr Objekt einen Namen hat, können Sie die folgende Methode verwenden: const std::string& get_name{ return name; };.
Wann sollten Sie einen konstanten Referenzparameter verwenden?
Wenn Sie ein Argument als Referenz übergeben, verwenden Sie immer eine konstante Referenz, es sei denn, Sie müssen den Wert des Arguments ändern. Nicht konstante Referenzen können nicht an r-Werte gebunden werden. Eine Funktion mit einem nicht konstanten Referenzparameter kann nicht mit Literalen oder temporären Variablen aufgerufen werden.
Wann sollten Sie als Referenz zurückkehren?
Referenzübergabe bedeutet, eine Referenz auf ein bereits existierendes Objekt zu übergeben. Wenn Sie also eine Referenz in einer Funktion zurückgeben möchten, bedeutet dies, dass Sie dieses Objekt in der Funktion erstellen müssen Sie wissen, dass eine Funktion ein neues Objekt auf zwei Arten erstellen kann: Auf der Stapel oder der Haufen.
Was macht const reference?
wenn Sie eine konstante Referenz verwenden, übergeben Sie sie als Referenz und die Originaldaten werden nicht kopiert. In beiden Fällen können die Originaldaten nicht innerhalb der Funktion geändert werden.
Was bedeutet es, wenn eine Referenz zurückgegeben wird?
Es bedeutet Sie kehren per Referenz zurück, was zumindest in diesem Fall wahrscheinlich nicht erwünscht ist. Dies bedeutet im Grunde, dass der zurückgegebene Wert ein Alias für alles ist, was Sie von der Funktion zurückgegeben haben. Wenn es sich nicht um ein dauerhaftes Objekt handelt, ist es illegal.