Variable querying of C++ types