创建重复对象的向量?

时间:2018-04-01 14:52:37

标签: c++ object vector

我有一个大小为50的向量,向量内部是5个对象。我想复制这5个对象的所有内容,并用它们填充其余的向量。

我下面的内容完全复制了对象(i = 5是因为我忽略了前4个向量元素)。

for (int i = 5; i <= CParams::iNumBirds; i++){
    m_vpDisplayableObjects[i + 5] = m_vpDisplayableObjects[i];
}

但问题是我想给每个对象一个不同的ID,0-50。见下文

for (int i = 0; i < CParams::iNumBirds; i++) {
        m_pMainEngine->GetDisplayableObject(i + 5)->ObjectID = i;
    }

显然,因为它们是副本,所以每5个元素重置ObjectID,所以最后所有对象的ID都是45-50而不是0-50。

我的问题是,如何创建这些对象的副本,但每个对象都有不同的ObjectID?

1 个答案:

答案 0 :(得分:1)

您可以创建一个函数,将复制对象的属性值复制到新对象,并将新对象的id作为参数传递。

accessToken

然后在for循环中调用此函数

refreshToken