首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

【Poco】Poco:DynamicAny中的例证

2012-11-25 
【Poco】Poco::DynamicAny中的例子#include ../tmain.hppvoid test_DynamicAnyInt(){Poco::Int32 src 32

【Poco】Poco::DynamicAny中的例子

#include "../tmain.hpp"void test_DynamicAnyInt(){Poco::Int32 src = 32;Poco::DynamicAny a1 = src;assert (a1.type() == typeid(Poco::Int32));std::string s1;Poco::Int8 s2;Poco::Int16 s3;Poco::Int32 s4;Poco::Int64 s5;Poco::UInt8 s6;Poco::UInt16 s7;Poco::UInt32 s8;Poco::UInt64 s9;float s10;double s11;bool s12;char s13;long s14;unsigned long s15;a1.convert(s1);a1.convert(s2);a1.convert(s3);a1.convert(s4);a1.convert(s5);a1.convert(s6);a1.convert(s7);a1.convert(s8);a1.convert(s9);a1.convert(s10);a1.convert(s11);a1.convert(s12);a1.convert(s13);a1.convert(s14);a1.convert(s15);assert (s1 == "32");assert (s2 == 32);assert (s3 == 32);assert (s4 == 32);assert (s5 == 32);assert (s6 == 32);assert (s7 == 32);assert (s8 == 32);assert (s9 == 32);assert (s10 == 32.0f);assert (s11 == 32.0);assert (s12);assert (s13 == ' ');assert (s14 == 32);assert (s15 == 32);Poco::DynamicAny a2(a1);std::string t2;a2.convert(t2);assert (s1 == t2);Poco::Int32 value = a1.extract<Poco::Int32>();assert (value == 32);try{Poco::Int16 value2; value2 = a1.extract<Poco::Int16>();}catch (Poco::BadCastException&){}}


热点排行