C++程序设计
第3章 string、vector、数组和指针
标准库string类型
标准库vector类型
数组
指针
typedef
本章小结
第3章 string、vector、数组和指针
标准库string类型
对象与变量
一般情况下,为了与内置类型变量相区别,称复杂数据类型的变量为对象(object),或称某某数据类型对象。
广义讲,常量、变量都称为对象,狭义讲,对象仅指复杂数据类型的变量,在本书中,沿用对象广义概念,类变量称为对象,基本数据类型的变量称为对象,常量也称为对象。
string对象的定义和初始化
为了在程序中使用string类型,必须包含string头文件,并导入名字空间,如下:
#include <string>
using std::string;
标准库string是类类型,类类型对象通过构造函数初始化,构造函数是一个特殊的类成员函数,在类对象初始化的时候执行。
string对象的定义和初始化
表3-1 string的几个常用构造函数
string的几个常用构造函数
string s1;
缺省构造函数,生成一个空字符串s1
string s2(s1);
拷贝构造函数,将s2初始化为s1的副本
string s3("value");
将s3初始化为一个字符串字面值的副本
string s4(n, 'c');
将s4初始化为包含n个'c'字符的字符串
string对象的输入输出
【例 】string对象的输入和输出操作。
#include <iostream>
#include <string>
using namespace std;
// using std::string;
int main( ) {
string s1, s2;// 定义s1、s2,并初始化s1、s2为空字符串
// 依次读取字符串一赋给s1,字符串二赋给s2
cin >> s1 >> s2;
cout << s1 << s2 << endl; // 输出s1和s2
return 0;
}
string对象的操作
对象成员包括该数据类型定义的成员函数和内部数据成员,要调用一个对象的成员函数,或者引用一个对象的内部数据成员,通过“.”运算符,表示如下:
或者
(参数表)
前者引用的是数据成员,后者调用成员函数,这里,“.”是一个运算符,功能是表示对象的成员。
表3-2 常用的string操作
常用的string操作
( )、( )
返回s中字符的个数
( )
如果s为空串,则返回true,否则返回false
( )
返回字符的可能最大个数
( )
返回重新分配之前的字符容量
( )
保留一定量内存以容纳一定数量的字符
==、!=、<、<=、>、>=、pare( )
按字典序比较字符串
=、( )
字符串赋值
( )
清空字符串
s1 + s2
把s1和s2连接成一个新字符串,返回新生成的字符串
+=、( )
在尾部添加字符
s[n]、(n)
存取s中位置为n的字符,位置从0开始计数
find( )、rfind( )、substr( )、
find_first_of、find_first_not_of、find_last_of和find_last_not_of
子串查找
( )
插入字符
( )
字符串替换
( )
交换两个字符串的内容
>>、getline( )
从stream读取某值
( )
将内容以c_string返回
( )
将内容以字符数组形式返回
( )、( )
提供类似STL的迭代器支持
( )、( )
逆向迭代器
( )
返回配置器
……
……
string对象的操作
一个C++字符串存在3种大小,相应的函数分别是:
函数size( )和length( )等价,都返回string对象中字符个数。函数empty( )判断字符串是否为空,判断字符串是否空也可以利用函数size( )或者length( ),将长度与0比较;
函数max_size(
第3章 string、vector、数组和指针 来自淘豆网www.taodocs.com转载请标明出处.