欢迎来到天天文库
浏览记录
ID:49051123
大小:985.50 KB
页数:77页
时间:2020-01-30
《第3章 string、vector、数组和指针 - 副本.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C++程序设计第3章string、vector、数组和指针3.1标准库string类型3.2标准库vector类型3.3数组3.4指针3.5typedef3.6本章小结第3章string、vector、数组和指针3.1标准库string类型3.1.1对象与变量一般情况下,为了与内置类型变量相区别,称复杂数据类型的变量为对象(object),或称某某数据类型对象。广义讲,常量、变量都称为对象,狭义讲,对象仅指复杂数据类型的变量,在本书中,沿用对象广义概念,类变量称为对象,基本数据类型的变量称为对象,常量也称为对象。3.1.2string对象的定义和初始化为了在程序中使用string类型,
2、必须包含string头文件,并导入名字空间,如下:#includeusingstd::string;标准库string是类类型,类类型对象通过构造函数初始化,构造函数是一个特殊的类成员函数,在类对象初始化的时候执行。3.1.2string对象的定义和初始化表3-1string的几个常用构造函数string的几个常用构造函数strings1;缺省构造函数,生成一个空字符串s1strings2(s1);拷贝构造函数,将s2初始化为s1的副本strings3("value");将s3初始化为一个字符串字面值的副本strings4(n,'c');将s4初始化为包含n个'c'字符
3、的字符串3.1.3string对象的输入输出【例3.1】string对象的输入和输出操作。#include#includeusingnamespacestd;//usingstd::string;intmain(){strings1,s2;//定义s1、s2,并初始化s1、s2为空字符串//依次读取字符串一赋给s1,字符串二赋给s2cin>>s1>>s2;cout<4、象的内部数据成员,通过“.”运算符,表示如下:对象名.数据成员或者对象名.成员函数名(参数表)前者引用的是数据成员,后者调用成员函数,这里,“.”是一个运算符,功能是表示对象的成员。表3-2常用的string操作常用的string操作s.size()、s.length()返回s中字符的个数s.empty()如果s为空串,则返回true,否则返回falses.max_size()返回字符的可能最大个数s.capacity()返回重新分配之前的字符容量s.reserve()保留一定量内存以容纳一定数量的字符==、!=、<、<=、>、>=、s.compare()按字典序比较字符串=、s.as5、sign()字符串赋值s.erase()清空字符串s1+s2把s1和s2连接成一个新字符串,返回新生成的字符串+=、s.append()在尾部添加字符s[n]、s.at(n)存取s中位置为n的字符,位置从0开始计数find()、rfind()、substr()、find_first_of、find_first_not_of、find_last_of和find_last_not_of子串查找s.insert()插入字符s.replace()字符串替换s.swap()交换两个字符串的内容>>、getline()从stream读取某值s.c_str()将内容以c_string返回s.data6、()将内容以字符数组形式返回s.begin()、s.end()提供类似STL的迭代器支持s.rbegin()、s.rend()逆向迭代器s.get_allocator()返回配置器…………3.1.4string对象的操作1.string的大小和容量函数一个C++字符串存在3种大小,相应的函数分别是:函数size()和length()等价,都返回string对象中字符个数。函数empty()判断字符串是否为空,判断字符串是否空也可以利用函数size()或者length(),将长度与0比较;函数max_size(),所获取的大小是当前字符串最多能容纳的字符数,和机器本身的限制或者字符串所在7、位置连续内存的大小有关系,例如,在某台PC上:cout<
4、象的内部数据成员,通过“.”运算符,表示如下:对象名.数据成员或者对象名.成员函数名(参数表)前者引用的是数据成员,后者调用成员函数,这里,“.”是一个运算符,功能是表示对象的成员。表3-2常用的string操作常用的string操作s.size()、s.length()返回s中字符的个数s.empty()如果s为空串,则返回true,否则返回falses.max_size()返回字符的可能最大个数s.capacity()返回重新分配之前的字符容量s.reserve()保留一定量内存以容纳一定数量的字符==、!=、<、<=、>、>=、s.compare()按字典序比较字符串=、s.as
5、sign()字符串赋值s.erase()清空字符串s1+s2把s1和s2连接成一个新字符串,返回新生成的字符串+=、s.append()在尾部添加字符s[n]、s.at(n)存取s中位置为n的字符,位置从0开始计数find()、rfind()、substr()、find_first_of、find_first_not_of、find_last_of和find_last_not_of子串查找s.insert()插入字符s.replace()字符串替换s.swap()交换两个字符串的内容>>、getline()从stream读取某值s.c_str()将内容以c_string返回s.data
6、()将内容以字符数组形式返回s.begin()、s.end()提供类似STL的迭代器支持s.rbegin()、s.rend()逆向迭代器s.get_allocator()返回配置器…………3.1.4string对象的操作1.string的大小和容量函数一个C++字符串存在3种大小,相应的函数分别是:函数size()和length()等价,都返回string对象中字符个数。函数empty()判断字符串是否为空,判断字符串是否空也可以利用函数size()或者length(),将长度与0比较;函数max_size(),所获取的大小是当前字符串最多能容纳的字符数,和机器本身的限制或者字符串所在
7、位置连续内存的大小有关系,例如,在某台PC上:cout<
此文档下载收益归作者所有