《Essential C++》系列笔记之第三章(泛型编程风格)之第三节(所有容器的共通操作)

《Essential C++》系列笔记之第三章(泛型编程风格)之第三节(所有容器的共通操作)_第1张图片
代码实践

#include 
using namespace std;
#include 

int main()
{
	vector<string> v1;
	
	//vector::iterator iter = v1.begin();
	v1.insert(v1.begin(), "hehe");
	v1.insert(v1.begin(), "xixi"); //这里只能在 原有的数目 + 1 之内插入
	cout << v1.size() << endl;
	cout << v1[0] << " " << v1[1] << endl;

	v1.erase(v1.begin());
	cout << v1.size() << endl;  //erase可以指定位置,vector就不仅可以尾删啦
	cout << v1[0] << endl;

	//v1.push_back("hehe");
	//cout << v1[0] << endl;

	v1.clear();
	cout << v1.size() << endl;

	vector<string> v2;
	vector<string>::iterator iter = v2.begin();
	v2.insert(iter, "1");              //正常 与 v2.insert(v2.begin(), "1"); 效果一样

	//v2.insert(iter + 1, "2");        //出错(在vs上出错,在devcpp上无法打印) 说明泛型指针与begin()还是有区别
	v2.insert(v2.begin() + 1, "2");    //正常 只能在 原有的数目+1 之内插入

	cout << (v2.size() > v1.size() ? 1 : 0) << endl;

	v1 = v2;
	cout << (v2.size() > v1.size() ? 1 : 0) << endl;

	system("pause");
	return 0;
}

今天是20200308 正好今儿过生日,和广大妇女一起庆祝!

你可能感兴趣的:(《Essential,C++》系列笔记)