#include #include #include #include #include namespace fusion = boost::fusion; BOOST_FUSION_DEFINE_STRUCT( (), foo, (std::string, a) (std::string, b) ) bool operator==( const foo& lhs, const foo& rhs ) { return lhs == rhs; } int main() { foo h1, h2, h3; h1.a = "Foo"; h2.a = "Foo"; h3.a = "Bar"; std::cout << "h1 == h2: " << std::boolalpha << ( h1 == h2 ) << std::endl; std::cout << "h1 == h3: " << std::boolalpha << ( h1 == h3 ) << std::endl; }