Просто напишите простой шаблон:
template<typename T> const char* getClassName(T) { return typeid(T).name(); } struct A {} a; void main() { std::cout << getClassName(a); }