我有一个以下类型的结构,我计划将它用作映射中的键。因此,我写下如下的比较器。我想知道是否有更优雅而有效的方式来做到这一点。 可能会使用std :: pair或其他东西。使用结构键的std :: map的高效比较器
struct T
{
int a, b, c, d;
bool operator< (const T& r) {
if (a < r.a)
return true
else if (a == r.a)
if (b < r.b)
return true;
else if (b == r.b)
if (c < r.c)
return true;
else if (c == r.c)
if (d < r.d)
return true;
return false;
}
}
不幸的是没有C++ 11 – AMM