我的LastQueryInfo lastQuery班上有一个叫做的对象.每次这个对象改变时,我都会将它添加到一个名为的向量中history.
最初,当我这样history.push_back(lastQuery)做时,我不知道会发生什么 - 矢量是否会制作对象的副本?或者是否会继续提及它?所以,如果以后我修改lastQuery,历史矢量中的所有对象(假设它们都是引用)将被修改?
经过一些测试,我发现history.push_back(lastQuery)确实会制作一个对象的副本,然后将其添加到矢量中.但是如果不做任何测试我怎么知道呢?我怎么知道C++什么时候要复制,什么时候要添加实际的对象?