Ich weiß, dass die Rückkehr const Verweis manchmal Probleme verursachen, wie die angenommene Antwort in diesem thread. Allerdings bin ich mir nicht sicher, ob die folgende Verwendung von const Referenz mit Objekt zurückgegeben mit impliziten dieser Zeiger immer sicher ist?Funktion, die const-Referenz von einer anderen Elementfunktion aufgerufen
class foo
{
private:
std::vector<double> vec;
public:
const std::vector<double>& Get_vec() const
{
return vec;
}
void some_method()
{
const std::vector<double> & vec2 = Get_vec(); // this->Get_vec
// do something with vec2
}
}
Die akzeptierte Antwort states * Die einzige Möglichkeit, die ein Problem verursachen kann, ist, wenn der Aufrufer die Referenz speichert, anstatt die Zeichenfolge zu kopieren, und versucht, sie zu verwenden, nachdem das Objekt zerstört wurde was ist das Problem? – NathanOliver