我有一个使用boost的变体,看起来像这样:typedef boost::variant<int, float, double, long, bool, std::string, boost::posix_time::ptime> variant;
我需要能够将此变量中的任何值转换为std::string,我想知道是否有一些模板类型函数可以用来做到这一点?
或者什么是最有效的方法?
目前我会实现一堆重载函数,每个函数都会接受一个类型,然后使用std::stringstream
进行转换,对于posix_time
我会使用它的转换函数。也许有更好的方法吗?