示例代码:
1. lexical_cast转换。
2. 如果不能转换抛出bad_lexical_cast异常。
#include <iostream> #include <string> using namespace std; #include <boost/lexical_cast.hpp> using namespace boost; void g_lexical_cast(const string &str) { try { int num = lexical_cast<int>(str); cout<<num<<" lexical_cast success. "<<endl; } catch (bad_lexical_cast &) { cout<<str.c_str()<<" throw exception."<<endl; } } int main(int argc, char*argv[]) { g_lexical_cast("123"); g_lexical_cast("123.456"); g_lexical_cast("abc"); return 0; }
运行结果: