标准库bitset类型
(1)eg::

数组和指针(设计c++程序,强调速度时使用数组和指针,否则尽量使用vector和迭代器类型)
1,数组的定义和初始化
(1)特殊的字符数组:字符串字面值包含一个额外的空字符用于结束字符串
(2)与vector类型不同,数组不提供push_back或者其他操作在数组中添加新的元素,数组一旦定义,就不允许添加新的元素,如果必须添加新元素,程序自己管理内存
2,size_t在cstddef头文件中定义的机器相关的无符号整型,该类型足以保存最大数组的长度,在数组的下标访问操作,数组下标的正确类型size_t;
3,new和delete表达式
(1)new和delete表达式动态创建和释放数组,这两种表达式也可以用于动态创建和释放单个对象,Eg:int *pi=new int;
(2)动态创建对象的初始化
int *pi=new int(1024);//注意与数组的区分
(3)在delete之后,重设指针的值,Delete:p变成没有定义,因此该指针变成垂悬指针,应该立即将其置0
标准IO库
1,面向对象的标准库

顺序容器
1,容器元素的初始化
(1)将一个容器复制给另外一个容器时,类型必须匹配:容器类型和元素类型必须都匹配
vector<int>ivec;
vecor<int>ivec2(ivec);
(2)尽管不能直接将一种容器内的元素复制给另一种容器,但系统允许通过传递一对迭代器间接实现该功能,使用迭代器时,不要求容器类型相同,容器内的元素类型也可以不相同,只要他们互相兼容即可。
2,容器内元素类型的约束
元素类型必须支持赋值运算
元素类型的对象必须可以复制
3,容器元素都是副本
在容器中添加元素时,系统是将元素值复制到容器里。
4,赋值(=)和assign操作使左操作数容器的所有迭代器失效;swap操作则不会使迭代器失效。
(1)如果两个容器类型相同,且元素类型也相同,就可以使用赋值操作符(=)将一个容器赋值给另外一个容器eg:C1=C2;如果在不同(或相同)类型的容器内,元素类型不相同但是互相兼容,则其赋值运算必须使用assign函数
(2)assign操作是将调用该函数的容器清空,然后将参数内的元素复制给该容器。
(3)swap操作节省删除元素的成本,由于容器内没有移动任何元素,因此迭代器不会失效,前提是要交换的容器的类型必须匹配,而且所储存的元素类型也必须相同。</int></int>

vector容器的自增长
注意reserve和resize的区别:resize是改变容器的大小,后初始