我定义了以下类:
class Action
{
public:
Action(){ _bAllDone = false; }
void AddMove( Move & m );
private:
std::deque<Move> _todo;
bool _bAllDone;
};
成员 AddMove 定义如下:
void Action::AddMove( Move & m )
{
_todo.push_back( m );
}
我注意到没有这个函数的引用参数,复制构造函数被调用了两次,而有一个引用参数它只被调用了一次。只调用一次复制构造函数而不是两次是使用引用参数的好理由吗?