标准库string类型可以做什么

  在看《C++ Primer》之前,使用过的string类型的操作主要有,string对象的赋值、相加、关系运算、size操作,为数不多,今天阅读《C++ Primer》的“9.6节 再谈string类型”,发现原来string提供了这么丰富的操作。因为丰富,查阅起来会比较繁琐,不容易得到要领,在此对其支持的功能罗列总结一下,做一个索引,这样处理问题时,能不能够用string提供的功能、怎样使用就一目了然。

  如果可以处理,就根据索引查阅MSDN,选择合适的重载函数。例如:根据功能需要在MSDN中搜索“string::append”,在“Visual Studio 2012”版本中,该函数共有8个重载函数版本可以使用,选一个最合适的即可。

string类型支持但不限于以下这些功能:

功能实现 首选操作 举例或备注
在string对象中任意位置插入字符(串) insert  多个重载函数
将string对象部分或全部替换为其它字符(串) assign 多个重载函数
删除string对象的部分或全部内容 erase 多个重载函数
返回当前string对象的子串或string的副本 substr  
在string对象末尾添加字符串(串) append “C++”后添加“ Primer”
将string对象中任意字符(子串)替换为想要的字符(串) replace "C++ Primer 3rd Ed."改为"C++ Primer Fourth Ed." 
“精确匹配”查找字符(串)是否在string对象中  find  区分大小写
 在string对象中查找给定字符串中“任意字符 ”  find_first_of  这个很有用
 统计string对象中符合条件字符的个数  find_first_of(s2,pos)  需要借助while,《C++ Primer》中有很好的例子
 给定一个字符(串)范围作为参照,查找string对象中与参照的不匹配点  find_first_not_of  
 “反向查找”  rfind  
 实现字符串之间或子串之间等大小写敏感的字典顺序比较  compare  功能强于“关系运算符”,且可与find函数结合使用
     
     
     

  

原文地址:https://www.cnblogs.com/tingshuixuan2012/p/3013267.html