首页 > 代码库 > C++PRIMER 阅读笔记 第三章

C++PRIMER 阅读笔记 第三章

本章主要介绍 string vector 和 bitset, 不能贪多,现在本文主要介绍 string 与 vector

头文件中最好不要使用namespace std, 因为头文件会直接被预处理器放置到C中

std::string 的构造方式: string s1; string s2(s1); string s3("value");string s4(n,‘c‘);           第三种构造方式可有“\0”?

cout 与 cin 可以直接操作string , 和int 一样,踏实从第一个非空白字符开始读取,到再次遇到空白符号介结束 

cin 会返回所读取的istream对象,所以可以用来读取位置数目的数据

while(cin>>word)        返回的格式是什么样的?

while(getline(cin,line))    我记得可以知足定义换行符的,这个要看看

string 常用操作:

s.empty 如果为空返回ture 一般来说 while(!s.empty())

s.size 返回字符的个数 返回格式:string::size_type

string s3 = s2 + s1; s2 += s1;

s1 = s2; s1 == s2 ;

string s5 = s1 + "cd" + "  c";OK

string s6 = “dc” + "d" + s1;NO

 

vector 

vector<T> v1; vector<T> v1(v2); vector<T> v1(n,i); vector<T> v1(n); 

v.empty(); v.size();v.push_back();v1=v2;v1==v2;

增加元素只能用push_back;  删除最后的元素pop_back;

vector<int>::interator iter = v.begin();指向第一个元素

vector<int>::interator iter = v.end();只是个哨兵,不指向

for(vector<int>::iterator iter = ivec.begin();inter != ivec.end();++iter) *inter = 0;  迭代器典型用法

长度多占之后,vector 就失效了