として関数の戻り値を渡す:は、次のような場合に起こることになって何を参照
int functionA() {
return 25;
}
void functionB(const int& ref) {
cout << ref << endl;
}
void start() {
functionB(functionA());
}
この例をコンパイルすると、この作業を行いどのように正しい値25を出力しますか?スタックへの参照のみを使用する場合、スタック上の参照される戻り値を削除する(スタックから削除する)べきでないか、または動作が未定義であるべきか?
一時オブジェクトの定数参照の効果については、C++ 11標準12.2/4,5を参照してください。 – nijansen