小彪的3D世界
小彪的狗窝
IT博客
联系
聚合
管理
2 Posts :: 4 Stories :: 0 Comments :: 0 Trackbacks
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(1)
给我留言
查看公开留言
查看私人留言
随笔分类
(2)
生活(2)
随笔档案
(2)
2008年6月 (1)
2008年5月 (1)
文章分类
(4)
3D数学
C++(2)
Cg
OGRE
OpenAL
OpenGL(1)
图形学
比较杂(1)
策划设计
同行的网站
前辈
很养眼啊!
前辈的前辈
向你学习.
华南理工大的牛人
厉害,厉害!
游戏开发网站
Nehe的OpenGL站点
很好的OpenGL教程
最大的游戏开发站点
资源很丰富
游戏开发综合网站
国内最大游戏开发资源网站
物理引擎论坛
PHYS论坛
搜索
最新评论
阅读排行榜
1. 博客申请成功!(304)
2. 腻了,烦了,饿了!(162)
评论排行榜
1. 博客申请成功!(0)
2. 腻了,烦了,饿了!(0)
stringStream使用注意事项
C++标准库中的stringStreams是从iostream类派生而来的,也因为其内部重载了针对各重内置类型和某些标准库类型(如string)的确"<<"和">>"操作符,所以可以用来进行类型之间的转换.看起来比较简单,但因为一般的C++书籍对其介绍比较少,经过测试之后发觉有些东西还是需要注意的.
例如以下代码段:
1
int
a;
2
//
字符串流
3
stringstream strStream;
4
strStream
<<
"
345
"
;
5
strStream
>>
a;
6
cout
<<
a
<<
endl;
7
strStream.clear();
8
strStream
<<
"
34561
"
;
9
strStream
>>
a;
10
cout
<<
a
<<
endl;
输出为:
但如果稍微改动下代码:
strStream
<<
"
345a
"
;
strStream
>>
a;
cout
<<
a
<<
endl;
strStream.clear();
strStream
<<
"
34561
"
;
strStream
>>
a;
cout
<<
a
<<
endl;
则输出结果就变为:
为什么呢?因为 strStream << "345a";
strStream >> a;这两句并未将strStream内的内容读取完毕导致strStream.clear()无效,程序并没有清除strStream中的字符串,所以在下次从strStream中输出的时候还是会读取到345.
posted on 2008-06-01 14:10
Game Fun
阅读(634)
评论(0)
编辑
收藏
引用
所属分类:
C++
只有注册用户
登录
后才能发表评论。
Powered by:
IT博客
Copyright © Game Fun