gpt4 book ai didi

c++ - (C++) 无法让 deque insert() 工作,我做错了什么?

转载 作者:行者123 更新时间:2023-11-28 01:07:15 25 4
gpt4 key购买 nike

我在此处的 insert() 部分遇到错误,我不知道我做错了什么。我尝试了不同的参数和参数数量,但似乎没有任何效果。

m_oGameObjectList 是 IGameObjects(基类)的双端队列。
m_sPosition 是一个包含 3 个整数(X、Y、Z)的结构。
gameObject 是对派生自 IGameObject 的对象的引用。

for (int i = 0; i < m_oGameObjectList.size(); i++)
{
if (gameObject.m_sPosition.Z > m_oGameObjectList[i].m_sPosition.Z)
{
m_oGameObjectList.insert(i, gameObject);
i = m_oGameObjectList.size();
}
}

最佳答案

insert需要 iterator .使用:

m_oGameObjectList.insert(m_oGameObjectList.begin() + i, gameObject);

您还需要在 deque 中使用指针,现在您正在切片 - 插入 IGameObject 的拷贝的一部分 gameObject

关于c++ - (C++) 无法让 deque insert() 工作,我做错了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5503350/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com