C++stringstream的clear()清空误区
在用c++写程序时,经常回需要将int or double 等类型转换成string。对于这个操作,我常使用的是stringstream。比如
利用这个方法就可以将int类型a的值转换为string类型(同理,可以转换double,long等类型)。
如果你想要转换多个int/double等类型的变量,而又始终用一个stringstream对象(避免总是创建stringstream的开销),那么你就需要在再一次用stringstream之前将stringstream的内容清空。我们首先想到的是clear()方法。经查看stringstream果然有个clear()方法(好开心^.^),于是你就这么去应用stringstream了。
结果竟然发现运行结果是这样!!
a_str:10 b_str:102.8
怎么回事!? 原来clear() 方法只是重置了stringstream的状态标志,并没有清空数据。如果需要清空数据,可以用是s1.str(“”)来实现这个目的。
谨记!不然很容易使你的程序出现错误,并且吃掉你的内存!
参考:http://blog.163.com/mageng11@126/blog/static/1408083742012214104532291/
C++stringstream的clear()清空误区相关推荐
- 【Dart 教程系列第 9 篇】Dart 之 clear 清空数组
这是[Dart 教程系列第 9 篇],如果觉得有用的话,欢迎关注专栏. Dart 清空数组用 clear() 方法,该方法无返回值,无参数. List<String> l1 = [&quo ...
- 直接使用editbox.clear()清空时,有时会无法清除完全,此时有清空文本框的另一种方法...
editbox = driver.find_element_by_id("id") editbox.click()content = editbox.get_attribute(& ...
- Python入门--字典元素的操作,key的判断(in not in),字典元素删除(del),字典元素的增加,清空(clear()),修改
#字典的常用操作 #key的判断 #in-->指定的key在字典中返回True-->'张三' in scores #not in-->指定的key在字典中返回True-->'M ...
- 的clear会清空内存吗_Python内存分配时有哪些不为你知的小秘密?
Python 中的sys模块极为基础而重要,它主要提供了一些给解释器使用(或由它维护)的变量,以及一些与解释器强交互的函数. 本次的Python学习教程分享将会频繁地使用该模块的getsizeof() ...
- stringstream用法总结
目录 一.概念 二.基本功能 功能一:预定的格式将程序中的数据保存在一个string 中 功能二:实现类型转换 功能三:实现任意类型转换 三.重要功能 1.数字由空格或逗号分开. 2.数字由逗号分开 ...
- C++学习-stringstream
转载于https://blog.csdn.net/shs1992shs/article/details/83051298 stringstream是 C++ 提供的一个字符串流(stream),要使用 ...
- C++编程语言中stringstream类介绍
本文主要介绍 C++ 编程语言中 stringstream 类的相关知识,同时通过示例代码介绍 stringstream 类的使用方法. 1 概述 <sstream> 定义了三个类:ist ...
- 关于stringstream的用法总结
关于stringstream的用法总结 将整形转化成字符串 #include <iostream> #include <sstream>using namespace std; ...
- stringstream的使用方法
在C语言中,如果想要将一个整形变量的数据转化为字符串格式,可以使用下面的方法: 1.使用itoa()函数 2.使用sprintf()函数 但是两个函数在转化时,都得需要先给出保存结果的空间,那空间要给 ...
最新文章
- 2020这一年,我完成了这几件大事
- 中国开封菊花花会照片1
- git config设置用户名_一个神奇的工具,实现多人协作,git常用命令详解
- Bzoj2037: [Sdoi2008]Sue的小球
- EasyUI实现工地领款单项目
- cad刷新快捷键_第16期分享:常用电脑快捷键是哪些?
- eclipse怎样创建并运行java项目
- SSH实战项目——在线商品拍卖网
- 《BackTrack 5 Cookbook中文版——渗透测试实用技巧荟萃》—第1章1.3节安装BackTrack到USB驱动器...
- Flutter实战一Flutter聊天应用(十四)
- Gstreamer 搭建RTSP服务器(九)
- 使用visio 2010建立sql server数据模型——手动画、利用逆向工程
- 使用pyautogui自动刷微信表情
- html播放m3u8格式转换,m3u8格式如何播放
- numpy.median
- 安装Linux启动盘【准备8G以上U盘即可】
- 今天看到一句觉得很牛逼的话与诸君共享
- SpringMVC框架|Handler处理器的三种写法
- 软件即服务(saas)_什么是SaaS? 定义软件即服务
- 区块链实验五 : 挖矿交易2