C++中查看数据类型的方法

最简单当然是用typeid了、不过首先得加入头文件typeinfo

例如想知道某个数据的类型、则使用name方法

#include <typeinfo>
using namespace std;

int main()
{
int iobj; cout << typeid( iobj ).name() << endl; // 打印: int cout << typeid( 8.16 ).name() << endl; // 打印: double

return 0;
}

如果只是想比较两者的类型是否相同、大可不必name方法

#include <type_info> 

using namespace std;
 
int main()
{
   employee *pe = new manager; 
   employee& re = *pe; 
 
   if ( typeid( pe ) == typeid( employee* ) )  // true 
     // do something 
   return 0;
}

 

posted @ 2012-04-25 16:10  klobodnf  阅读(33663)  评论(1编辑  收藏  举报