C++中的STL详解

栏目: C++ · 发布时间: 4年前

内容简介:1、string类 头文件:string如果s有三个字符,传统C的字符串的s[3]是’0’字符,但是C++的string则是只到s[2]这个字符而已。(1)常见构造函数

1、string类 头文件:string

如果s有三个字符,传统C的字符串的s[3]是’0’字符,但是C++的string则是只到s[2]这个字符而已。

(1)常见构造函数

string():构造空的string类对象,既空字符串
string(const char* s):使用 C语言 的字符串构造string类对象
string(size_t n,char c):构造后的string类对象包括n个字符c
string(const string& s):用string类对象s拷贝构造另一个对象
string(const string& s, size_t n):使用对象s中的第n个字符开始构造新的string类对象

(2)常用的函数

size_t size() const:返回字符串有效字符长度
size_t length() const:返回字符串有效的长度
size_t capacity() const:返回当前容量(即string中不必增加内存即可存放的元素个数)
bool empty() const:判断字符串是否为空串,是返回true,不是返回false
void clear():清空有效的字符
void reserve(size_t res_arg = 0):修改string类的容量,为字符串预留空间
int max_size()const;   返回string对象中可存放的最大字符串的长度
void resize(int len,char c);把字符串当前大小置为len,多去少补,多出的字符c填充不足的部分

string &insert(int p,const string &s);  //在p位置插入字符串s
string &replace(int p, int n,const char *s); //删除从p开始的n个字符,然后在p处插入串s
string &erase(int p, int n);  //删除p开始的n个字符,返回修改后的字符串
string substr(int pos = 0,int n = npos) const;  //返回pos开始的n个字符组成的字符串
void swap(string &s2);    //交换当前字符串与s2的值
string &append(const char *s);   //把字符串s连接到当前字符串结尾
void push_back(char c)   //当前字符串尾部加一个字符c
const char *data()const;   //返回一个非null终止的c字符数组,data():与c_str()类似,用于string转const char*其中它返回的数组是不以空字符终止,
const char *c_str()const;  //返回一个以null终止的c字符串,即c_str()函数返回一个指向正规C字符串的指针, 内容与本string串相同,用于string转const char*
int find(char c,size_t pos=0) const;//从字符串pos位置开始向后找字符c,找到返回该字符在字符串中的位置,找不到返回-1
int rfind(char c, size_t pos = npos);//从字符串pos位置开始向前查找字符c,返回该字符在字符串中的位置

size_type find( const basic_string &str, size_type index );  //返回str在字符串中第一次出现的位置(从index开始查找),如果没找到则返回string::npos
size_type find( const char *str, size_type index );  // 同上
size_type find( const char *str, size_type index, size_type length );  //返回str在字符串中第一次出现的位置(从index开始查找,长度为length),如果没找到就返回string::npos
size_type find( char ch, size_type index );  // 返回字符ch在字符串中第一次出现的位置(从index开始查找),如果没找到就返回string::npos

注意:查找字符串a是否包含子串b,不是用 strA.find(strB) > 0 而是 strA.find(strB) != string:npos。(npos可以表示string的结束位子,是string::type_size 类型的,也就是find()返回的类型。find函数在找不到指定值得情况下会返回string::npos。)

(4)


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

The Black Box Society

The Black Box Society

Frank Pasquale / Harvard University Press / 2015-1-5 / USD 35.00

Every day, corporations are connecting the dots about our personal behavior—silently scrutinizing clues left behind by our work habits and Internet use. The data compiled and portraits created are inc......一起来看看 《The Black Box Society》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具