閑古鳥

オールドプログラマの日記。プログラミングとか病気(透析)の話とか。

値を返す関数の戻り値を const 参照で受ける意図って

職場で見かけたソース。

struct st {
    int value;
};

st get_st() {
    st s;
    s.value = 100;
    return s;
}

int main()
{
    const st& s = get_st(); // これ
    
    return 0;
}

これって何か意味があるんでしょうか? 参照の有無に関わらずコピーコンストラクタ呼ばれてますし……。

あれ、 cpp_to_hatena を職場に持ってきたよ記念に使ってみたのに色分けされない……?

色分けされていました。職場のモニタだと色が見分けにくかっただけみたいです。家のノートだと、それなりに見えました。