reference to rvlaue VC++
От: savitar  
Дата: 28.03.16 19:01
Оценка:
struct A {};
A f() { return A(); }

int g() { return 42; }

int main()
{
     A& r = f(); // OK
     int& rr = g(); // Error
}


Почему Visual C++ 19.00.23506 компилирует первую строчку и не компилирует вторую?
GCC выдает в обоих случаях error: invalid initialization of non-const reference of type 'A&' from an rvalue of type 'A'
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.