参照を返すことは良い習慣ではないようです ( C++ 参照変数を返す習慣は悪ですか? )。
この例では、戻り参照と戻り値のどちらが良いでしょうか?
class A
{
B b;
public:
B getB() {return b;} // ??? return value
B& getB() {return b;} // ??? return reference;
};
戻り値はまだメモリ内にあるので、参照を返すことは問題ないと思いますが、C++ プログラマーが通常何をしているのかわかりません。値を返すタイミングと参照 (またはポインター) を返すタイミングに関するガイドラインはありますか?