【发布时间】:2015-01-14 19:50:38
【问题描述】:
我有一个“simpleVector”的向量:
struct SimpleStruct
{
XMFLOAT3 hello;
XMFLOAT3 hi;
};
std::vector <SimpleStruct> simpleVector(0);
我正在尝试删除一个元素,例如 simpleVector[3],然后将其余元素向下移动一个以删除空白区域。
simpleVector.erase(std::remove_if(simpleVector.begin(), simpleVector.end(),
[](int i) { return i == 3; }), simpleVector.end());
但是,我收到此错误:无法将参数 1 从 'SimpleStruct' 到 'int'。
如果这很明显,请原谅我,我是 C++ 新手。我怎样才能消除这个问题?
【问题讨论】:
-
您的 lambda 应该采用
SimpleStruct参数,而不是int(或SimpleVertex,您的错误让我相信您实际在使用)。