Use typeid : typeid « Development « C++ Tutorial






#include <iostream> 
#include <typeinfo> 
using namespace std; 
 
class MyClass { 

}; 
 
int main() 
{ 
  int i, j; 
  float f; 
  MyClass ob; 
 
  cout << "The type of i is: " << typeid(i).name() << endl; 
  cout << "The type of f is: " << typeid(f).name() << endl; 
  cout << "The type of ob is: " << typeid(ob).name() << "\n\n"; 
 
  if(typeid(i) == typeid(j)) 
    cout << "The types of i and j are the same\n"; 
 
  if(typeid(i) != typeid(f)) 
    cout << "The types of i and f are not the same\n"; 
 
  return 0; 
}
The type of i is: i
The type of f is: f
The type of ob is: 7MyClass

The types of i and j are the same
The types of i and f are not the same








5.24.typeid
5.24.1.Use typeid
5.24.2.Use typeid on a polymorphic class heirarchy
5.24.3.Compare the typeid for templates
5.24.4.Use a reference with typeid
5.24.5.Demonstrating run-time type id
5.24.6.Using typeid with templates
5.24.7.Using typeid: class pointer, base class, derived class,
5.24.8.typeid() function and RTTI must be enabled in compiler
5.24.9.Output the name of a typeid
5.24.10.print type name of what ptr points at
5.24.11.Using typeid: enum data type