C++ Primer学习总结 第3章 字符串,向量和数组

第3章 字符串,向量和数组


1.    如何用string读取一整行内容?

用getline(cin,s)即可. 当然getline()也可以用来作为while循环读取输入的判断条件.

 

2.    string与字符串字面值,字符字面值相加

C++ Primer学习总结 第3章 字符串,向量和数组_第1张图片

由于+法是从左向右运算的,所以只要保证每次两个值相加时,+号左右两边至少有一个是string就行.

 

3.    string不仅可以与字符串字面值相加,还可以与’\0’字符结束的字符串数组相加.

C++ Primer学习总结 第3章 字符串,向量和数组_第2张图片

 

4.    注意下面数组的初值:

C++ Primer学习总结 第3章 字符串,向量和数组_第3张图片

如果a与b数组都是全局的话:

 

5.    复杂数组声明

C++ Primer学习总结 第3章 字符串,向量和数组_第4张图片

 

6.    注意下面指针的操作:

C++ Primer学习总结 第3章 字符串,向量和数组_第5张图片

 

7.    注意下面两个不同的输出结果:

C++ Primer学习总结 第3章 字符串,向量和数组_第6张图片

因为str实际指向的是string s中的一个字符串常量数组,如果该数组的内容变了,那么str的内容自然要变. 那么看下面的结果:

C++ Primer学习总结 第3章 字符串,向量和数组_第7张图片

为什么会依然输出abcde呢? 因为原先的字符串数组只能保存5个字符,现在新的字符串有6个字符,那么string类就会申请新的够大的空间重新保存”ABCDEF”,而以前的字符数组str内容不变,所以如果我们还输出str时,实际上是在输出旧的字符串数组的内容.

 

8.    C++11中如何用数组来初始化vector

C++ Primer学习总结 第3章 字符串,向量和数组_第8张图片

 

9.    C++中的多维数组 仅仅是 数组的数组

C++ Primer学习总结 第3章 字符串,向量和数组_第9张图片

 

10.   auto和 decltype推断一个数组名时,结果不同:

C++ Primer学习总结 第3章 字符串,向量和数组_第10张图片

auto推断出来的是一个指针类型, 而decltype推断出来的是一个数组类型.

 

你可能感兴趣的:(C++Primer,学习总结,C++,Primer,第5版学习总结)