回 帖 发 新 帖 刷新版面

主题:高手指点,如何判断数据类型(float,int,char.....)

高手指点,如何判断数据类型(float,int,char.....)

回复列表 (共2个回复)

沙发

比较正规的是:针对Windows下的C++(bcb/vc++),对TC++不支持;也支持随意的类型/别名(别名时显示原名)
#include <typeinfo.h>
......
int/long/float/struct{...}/class{...}/... var;   //声明一个变量,类型随意(包括自定义类型,typedef的类型别名)
const typeinfo &info = typeid(var);   //得到变量的类型信息
printf("%s",info.name());

板凳

这也是我在书上看到的.以前未知道这种方法前,我有一个怪招来对付这种问题——Overload,你应该知道是什么意思了,连TC++也可以进行类型判断了.恐怕你找遍整个Internet都没几个人想到用这招.
不过这种方法必须考虑所有可能用到的类型(也支持自定义的),即在编程时就要把所有以后可能要判断的变量类型写进来.

呵呵,看好了就给点分来.我的解题方法有时就是出人意料[em11]

我来回复

您尚未登录,请登录后再回复。点此登录或注册