您的位置:首页 > 编程语言 > C语言/C++

C++学习笔记(二)

2015-07-30 15:40 288 查看

11. 标准库string类型与字符串字面值

两者不是同一种类型,注意区分。

12. string对象的读写

//code
string s;
cin>>s;
cout<<s<<endl;
输入时:读取并忽略开头所有的空白符(如空格,换行符,制表符);读取字符直至再次遇到空白符,读取终止。

13. string::size_type类型

String对象进行size() 操作时返回size_type类型,不要把size()返回到一个int类型对象上,而是应该返回到 string::size_type 类型对象中。

14. string对象与字符串字面值混合连接

当进行string对象和字符串字面值混合连接操作时,+ 操作符左右操作数必须至少有一个为string对象。

15. vector

vector不是一种数据类型,而是一种类模板,vector类型的每一种都指定了其保存元素的类型,可以用于定义多种数据类型。

16. vector下标操作不添加元素

必须是已存在的元素才能用下标操作符进行索引。通过下标操作进行赋值时不会添加任何元素。

17. 迭代器

每种容器都定义了自身的迭代器。
//code
vector<int> iVec;
vector<int>::iterator iter=iVec.begin(); //指向r容器的第一个元素
iter=iVec.end();   //指向容器的末端的下一个,称为 超出末端迭代器,表明指向的是一个不存在的元素。

18. const_iterator对象

const_iterator对象:其自身值可以改变,但不能改变其指向的值,可以进行自增与自减等操作;const iterator对象:必须在初始化,其自身不能改变,但其指向的值可以改变。

19. bitset类型

类模板,仅区别其长度,而不在其类型。定义时必须给定位的长度。
bitset<32> bitVec;bitset<16> bitVect1(0xffff); //用unsignedstring str(“1100”);biteset<32> bitVec3(str); //第2和3位为1,剩下的置0。

20. 数组初始化

在函数体外定义的内置数组,其元素均初始化为0;在函数体内定义的内置数组,其元素无初始化。元素为类类型时,自动调用默认构造函数初始化,若无默认构造函数,需显示初始化。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: