C++ boost之 conversion/lexical_cast
来源:互联网 发布:淘宝淘金币购买 编辑:程序博客网 时间:2024/05/16 23:47
- 动 机
有时候,我们必须把一个值转换成字面上一样的其它形式,比说把int型的数值转换成string型字符串,相反把string字
符串转成int型数值也一样。当程序内部数据类型相互转换或者程序内部数据类型转换成非程序内部类型(比如windows和配置
文件),想上述的类型转换操作是最常见,也是最常用的。
在标准C/C++库中,提供和很多关于类型转换的工具或功能函数。但是,它们缺乏易用性,可扩展性,和安全性。
举一个例子,在标准C家族中有一个atoi的函数,在使用过程中它就有许多限制:- 单边转换:仅从文本类型转换为内部数值类型。使用C库当中的函数进行类型转换,要么不方便、要么没有像sprintf那样安全、要么没有像其他非标准库那样简单。
- 范围小:其转换的范围仅仅是内建数字类型的一个子集(int,long和double类型)。
- 拓展性差:它不能扩展成一种特定类型,比如说把一个字符串转换成复数或有理数。
C标准库中还有一个典型的strtol函数,它也有上述限制,不过在转换过程中提供了更好的控制。但是在一般情况下,
这样的控制是不必要的或者很少用到的。scanf家族的功能函数提供的控制甚多,但也缺少安全性和易用性。
现在我们来讨论,C++标准库中提供的一种核心类型格式化的函数stringstream。在类型格式化和在任意类型之间的I/O
转换上,它提供了更好 的控制。然而,这么简单的转换就用stringstream显得太笨重和费解。
- C++ boost之 conversion/lexical_cast
- 学习boost之lexical_cast
- boost学习之-lexical_cast
- boost之lexical_cast
- Boost 之 lexical_cast
- boost学习之lexical_cast
- boost之lexical_cast使用
- boost之lexical_cast
- boost之lexical_cast简易说明
- boost库学习之 lexical_cast
- conversion/lexical_cast
- Boost::lexical_cast
- Boost :Lexical_cast
- boost::lexical_cast
- boost lexical_cast
- boost::lexical_cast
- boost lexical_cast
- boost::lexical_cast
- 关于我
- OSPF-为什么让域间汇总路由进入NSSA?
- 马屁都拍绝了!史上最牛的面试问答(收藏)
- Redhat Linux下如何生成core dump文件
- 技术路线的选择重要但不具有决定性
- C++ boost之 conversion/lexical_cast
- remoting 系列一 (Remoting基础)
- C#获取HTTP路径下的所有文件信息(可以做侦测了)
- c# WInform 窗口启动特效,使用win32 api
- 求平均值您都不会!信不信?有种你试试!
- java中操作xml几种方式的比较和代码示例(DOM,SAX,JDOM,DOM4J)
- c3p0连接池的使用
- XFire开发时返回的数据类型
- GC的解释