开发者

函数返回临时对象时有没有调用拷贝构造函数??

大连888999 开发者_高级运维 10小时前

首先,我用g++不能编译你的代码,A& a = fn();这一句报错:用类型为‘A’的右值初始化类型为‘A&’的非常量引用无效。


不可一世的小女人xiaohui 10小时前

把引用去掉后(A a = 开发者_高级运维fn();)发现还是没有调用copy constructor。网上查了一下发现这叫“copy elision”,就是说copy constructor即使有副作用还是会被编译器优化掉的。


0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜