现在的位置: 首页 > 综合 > 正文

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

2018年10月05日 ⁄ 综合 ⁄ 共 453字 ⁄ 字号 评论关闭

示例代码:

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

运行结果:

抱歉!评论已关闭.