QVector Deep Copy



我正在尝试深度复制我的变量:

QVector<PetTeam*> petTeam;

这个宠物队类还有另一个包含宠物等的QVector。我希望将它们全部深度复制,以便我可以将它们用于最小最大值 AI 中的状态,但到目前为止,我无法正确深度复制它。

如果有人能就在这种情况下进行深度复制的正确方法提供任何见解,我们将不胜感激!

如果要自动复制所有PetTeam对象,则需要将向量声明为QVector<PetTeam> petTeam 。它要求PetTeam有一个没有参数的构造函数和一个复制构造函数。它们是自动生成的,但如果PetTeam包含任何无法简单复制的信息(例如文件处理程序、指向手动分配的内存的指针等(,则应重新实现它们。

另一种选择是手动复制对象,即遍历列表并使用new PetTeam(...)为每个旧对象创建一个新对象,然后将它们放入新列表中。

相关内容

  • 没有找到相关文章

最新更新