2
参照または値によってスマートポインター(shared_ptr)を返す方法は?
を返すメソッドを持つクラスがあるとしますshared_ptr。 参照または値によってそれを返すことの考えられる利点と欠点は何ですか? 2つの考えられる手がかり: オブジェクトの早期破壊。shared_ptrby(const)参照を返す場合、参照カウンターは増分されないため、別のコンテキスト(たとえば、別のスレッド)でスコープから外れると、オブジェクトが削除されるリスクがあります。これは正しいです?環境がシングルスレッドの場合、この状況も発生する可能性がありますか? 費用。値渡しは確かに無料ではありません。可能な限り回避する価値はありますか? みんなありがとう。