>>450 まあ大体はそれでいいと思うが、アセンブラだと
; int& f();
mov eax,offset value
ret
; int f();
mov eax,[value]
ret
という感じだと思われるから、その後のアクセスなど考えると前者が軽いかもしれん。
要は、戻り値がintでなくint&だから、一般的実装ではポインタ的に動きそうだと。
でもインライン化されるなら話は全く変わる。
どっちにしても、個人的にint& f();みたいな関数を書きたい局面は滅多に無いと思う。
でもMyClass& f();みたいにクラスを返すなら話は全く変わるし、頻繁に使ってる。
つーか組込型への参照を返す場面ってほとんど無いんじゃ。
クラスメンバアクセサとかなら、半端な隠蔽せんで読みと書きに個別の関数作るしな。
>>458 いや、どう見ても自動変数じゃないから鬼門ではなかろ。
int& f() { int value; return value; }
なら即自滅だが。