boost之lexical_cast库,数值/字符串转换及其异常处理

示例代码:

    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;
}


运行结果:

boost之lexical_cast库,数值/字符串转换及其异常处理_第1张图片


你可能感兴趣的:(boost之lexical_cast库,数值/字符串转换及其异常处理)