Les objets temporaires ne peuvent par être liés à des références non const
Mise à jour : novembre 2007
Dans les versions précédentes de Visual C++, les références non const ne pouvaient pas être liées aux objets temporaires. Désormais, les objets temporaires peuvent être liés uniquement à des références const.
Exemple
Par exemple, l'exemple suivant a un comportement différent au moment de l'exécution dans Visual Studio .NET 2003 et Visual Studio .NET :
// bc_temp_objects_not_bound_to_nonconst_ref.cpp
// compile with: /EHsc
#include "iostream"
using namespace std;
class C {};
void f(C & c) { cout << "C&" << endl; }
void f(C const & c) { cout << "C const &" << endl; }
int main() {
f(C());
}
C const &