码迷,mamicode.com
首页 > 编程语言 > 详细

C++ 串

时间:2016-04-15 13:38:02      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:

♣ string 的基类basic_string中没有虚函数,它无意成为基类。更像是为了处理字符相关的问题而专门提供的一个工具及操作方法。如:想要在一个字符串str1中查找str2,没必要每次都去写KMP算法,开源的口号就是不要重复发明轮子,利用string中的find()操作即可。笔者遇到碰到过的问题中就有类似问题:给定两棵树,要求判断tree2是不是tree1的子结构。序列化之后就可以用如下语句:

if(string::npos!=str1.find(str2))
          return true;

♣ 它继承了c风格字符串(\0 结束)和操作,封装出来的方法更贴近用户,和vector一样是很好用的工具,所以觉得有必要整理一下。

 

1.元素访问

--[] :

--at(): 带访问检查(会抛出out_of_range异常)

--迭代器:

指针与数组的关系对string并不成立。string s,  &s[0] 与 s 并不等。

2.初始化与赋值

--不能用字符和整数来初始化字符串;

 但是字符可以赋值

string s = ‘a‘; X            string s;  s = ‘a‘;√

3.到c风格的转换

利用c_str()产生c风格字符串,注意传中的0字符

4.其他

拼接:+

插入:

--+=

---append

--insert

查找:find及其变种,find结果为unsigned

替换:replace,erease

 

C++ 串

标签:

原文地址:http://www.cnblogs.com/lp3318/p/5394882.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!