Здравствуйте, regnar, Вы писали:
R>Очень сильно надоело писать такую лапшу:
R>R>bool operator==(...)
R>{
R> return lhs.a == rhs.a && lhs.b == rhs.b && ...
R>}
R>
R>Хочется как-то так
R>R>bool operator==(...)
R>{
R> if(membersEqual(lhs, rhs, <список полей исключений>)){ как-то по-своему сравниваем }
R> return false;
R>}
R>
R>Есть варианты?
Написал макросы. Hапример
#define EQUAL_STRUCT_3( a, b, c) template<typename T> bool operator == ( T const &Rhs) const { return a == Rhs.a && b == Rhs.b && c == Rhs.c; }
Раньше подобный макрос использовал для сериализации.