#define EXPORT(x) x {} class AngleBrackets { public: AngleBrackets(); ~AngleBrackets(); void operator>>(int a); void operator>>=(int a); template void operator>>(T a); template void operator>>=(T a); }; EXPORT(AngleBrackets::AngleBrackets()) EXPORT(AngleBrackets::~AngleBrackets()) EXPORT(void AngleBrackets::operator>>(int a)) EXPORT(void AngleBrackets::operator>>=(int a)) template<> void AngleBrackets::operator>>(float a) {} template<> void AngleBrackets::operator>>=(float a) {}