【プログラミング】C++に詳しい人参照と関数について教えてほしい
■ このスレッドは過去ログ倉庫に格納されています
参照を返却する関数が意味分からん書き方してあったんだが詳しい人解説してくれ
頼む int global =0;
int& func()
{
return global;
}
int main()
{
func() =5
}
こんな感じで参照を返す関数は式の左辺に置けて値を入れられる理由を教えてほしい なんで参照を返却する関数は引数じゃなくて代入で値を入れられるの? ポインタでいうところの
*global_ptr = 5
みたいなもんだろ
アスタリスクが省略されてるから分かりにくい return &globalじゃね
そうすればfuncはglobalの参照返すからそりゃ代入できるでしょ あーfunc()の戻り値がglobalへの参照だからfunc()を解決した時点でglobal=5が残るのか? func()はglobalの参照を返す
func() = 5の左辺を評価すると
(globalの参照)=5
globalに5が代入される
何が疑問? メソッドチェーンを駆使した結果判りづらくなるパターン ■ このスレッドは過去ログ倉庫に格納されています