很多个数据(123,true,inviscid,false,12.12)但是存都是按string存的,怎么去判断原来是什么类型的呀?并转换类型。
可能是我学识浅薄,我觉得判断不了!
为什么这样说?
封装Json数据时,本来就支持int、bool、double、char等类型,例如:
QJsonObject likeObject1;
likeObject1.insert("game", "游戏");
likeObject1.insert("price", 58.5);
别人进行解析Json数据时,就是需要根据封装时是什么类型的数据,解析时就转换成什么格式。
但是如果你封装时将所有数据都按字符串进行封装的话,这就很为难了(实际项目开发中这样写会被人打,除非所有数据都是字符串,那就另当别论)。
还有,一个字符串怎么可能判断得了他原本是什么类型呢?
“123”,他就是一个字符串“123”啊,电脑怎么可能知道他原本是什么类型,也许它原本是整形123,也许它原本就是字符串“123”呢?
综上所述:我感觉判断不了....
if(typeid(a) == typeid(int)) cout<<"int";
if(typeid(a) == typeid(float)) cout<<"float";