c – 现在非临时工作的非常规参考?

随着移动语义的引入,您是否只能将临时工具绑定到const引用更改?非const似乎也延长了寿命.

 A getA() { return A();}  

 A & aref = getA(); //OK
 string & str = string("h") + string("i"); //OK again

这是使用msvc,A的析构函数在主退出之前不会被调用.

解决方法:

不,规则是相同的,不允许将rvalue绑定到非const左值引用. MSVC使用(危险)扩展.

上一篇:双窗口文件管理器:Commander One PRO for Mac


下一篇:建议104:用多态代替条件语句