【发布时间】:2014-06-04 06:56:21
【问题描述】:
我有这个功能:
fstream open_user_file() const
{
...
}
但我的编译器抱怨 fstream 复制构造函数被隐式删除。既然编译器执行 RVO,为什么选择复制构造函数而不是移动构造函数?
否则,最好的方法是什么?
【问题讨论】:
-
RVO 要求类型是可复制的。
-
@0x499602D2 有什么原因吗?
-
不确定,但标准要求复制构造函数可以访问,即使它会被优化掉。
标签: c++ fstream move-semantics rvo