C++Primer 笔记第三章

除了基本数据类型之外,C++还定义了一个内容丰富的抽象数据类型标准库。其中最重要的标准库类型是string和vector。他们分别定义了大小可变的字符串和集合。

string和vector 往往将迭代器用作配套类型(companion type),用于访问string中的字符串或者vector中的元素。

C++还定义了许多更高级的抽象数据类型。

3.1命名空间的using 声明

3.2标准库 string类型

3.2.1 string对象的ing一盒初始化

几种初始化string对象的方式

string s1; //默认构造函数,s1为空串
string s2(s1);
string s3("value");
string s4(n,'c');

 

3.2.2string对象的读写
string s1;
cin>>s;
读取并忽略开头所有的空白字符(如 空格,换行符,制表符);
读取字符直到再次遇到空白字符,读取终止。
如果输入的是“Hello world” ,则是s1中包含的是“hello” 而不包含空格。
读入位置数目的string对象
int main()
{
string word;
while(cin>>word)
cout<<word<<endl;
return 0;
 
}
 2.用getline可以读取整行文本
getline 函数从输入流的下一行读取,并保存读取的内容到string中,但不包括换行符。
和输入操作符不一样的是,getline并不忽略开头的换行符。只要getline遇到换行符,即便它是输入的第一个换行符,getline也将停止读入并返回。如果第一个字符就是换行符,则string参数被置为空string;
 3.2.3 string的对象操作
1.string的size 和empty操作
string st("The expense of spirit\n");
cout<<"the size of "<<st<<"is"<<st.size()
<<"charactors,including the newline"<<endl;
 
2.string::size_type 类型
从逻辑上来看,size()成员函数似乎应该返回整型数值,但事实上, size操作返回的是string::size_type类型的值。(这里,我在以前应用的时候从来没有注意过,这个一定要好好记住。)
注意:任何存储string的size操作结果的变量必须为string::size_type类型。特别重要的是, 不要把size的返回值赋给一个int变量
 3.string 关系操作符
4.string对象的赋值
5.两个string对象相加
6.和字符串字面值的连接
7.从string 对象获取字符
可以用下标操作符分别取出string对象的每个字符,分行输出:
string st("some string");
for( string::size_type ix=0;ix!=str,size();++ix)
cout<<str[ix]<<endl;
 8.下标操作符可以用作左值
str[ix]="*";
9.计算下标值
3.2.4 string操作中的字符处理
 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值