我想创建一个GLM向量(glm :: vec3专门)的std :: set。由于C++不知道如何对向量执行<操作,因此我必须传入比较函数。如何使用GLM矢量关系函数?
我可以通过创建像这样的结构写我自己:
struct compareVec
{
bool operator() (const glm::vec3& lhs, const glm::vec3& rhs) const
{
return lhs.x < rhs.x && lhs.y < rhs.y && lhs.z < rhs.z;
}
};
std::set< glm::vec3, compareVec > myset;
不过,我敢肯定,GLM包括自己的向量比较功能。
我发现下面的资源,但我不能确定如何使用它: https://glm.g-truc.net/0.9.4/api/a00137.html
如何传递的这些比较函数到我的集合中的一个?
一个很好的例子,为什么我应该使用GLM的比较函数! – StickyBits
小题目:你不应该实现<像这样,因为你可能有lhs
你可以尝试set myset(&compareVec);' –