Как обобщить определение <, если структура имеет произвольное число членов данных (<), определяется с помощью порядка, в котором перечислены члены данных)? Простой пример с 3-х членами:Определение == и <для структур с большим числом членов данных
struct nData {
int a;
double b;
CustomClass c; // with == and < defined for CustomClass
bool operator == (const nData& other) {return (a == other.a) && (b == other.b) && (c == other.c);}
bool operator < (const nData& other) {
if ( (a < other.a) || ((a == other.a) && (b < other.b)) ||
((a == other.a) && (b == other.b) && (c < other.c)) )
return true;
return false;
}
};
Использование вариативных шаблонов и рекурсии как-то?
Однако вы хотите, чтобы данные были заказаны. – SLaks