STL学习_vector_1


#include <iostream>
#include <vector>
using namespace std;

void vector_int_printf(vector<int> v)                  //打印存入int类型的vector的数据
{
	vector<int>::iterator v_end = v.end();
	for (vector<int>::iterator v1 = v.begin(); v1 != v_end; v1++)
	{
		cout << *v1 << " ";   //d迭代器相当于是一个指针,加*表示相应位置所存的数据
	}
}

//打印存入chart类型的vector的数据,可能这种做法是个很蠢得做法                              				      
//吧,应该可以有一个通用的函数来解决vector数据的输出

void vector_char_printf(vector<char> v)        

{
	vector<char>::iterator v_end = v.end();
	for (vector<char>::iterator v1 = v.begin(); v1 != v_end; v1++)
	{
		cout << *v1 << " ";
	}
}
void do_int()           //对vector<int>的处理函数
{
	int max;
	vector<int> v;
	cout << "创建vector<int>\t";
	cout << "输入vector<int> 的大小\t";
	cin >> max;
	cout << "输入vector<int> 的初始数据" << endl;
	for (int i = 0; i < max; i++)
	{
		int temp;
		cin >> temp;
		v.push_back(temp);
	}
	vector_int_printf(v);
}
void do_char()            //对vector<char>的处理函数
{
	int max;
	vector<char> v;
	cout << "创建vector<char>\t";
	cout << "输入vector<char> 的大小\t";
	cin >> max;
	cout << "输入vector<char> 的初始数据" << endl;
	for (int i = 0; i < max;i++)
	{
		char temp;
		cin >> temp;
		v.push_back(temp);
	}
	vector_char_printf(v);
}

void show_int_char()          //为了好看做出来的一个简单到极致的界面
{
	int chose;
	int over = 1;
	while (over == 1)
	{
		system("cls");
		cout << "*****************主界面******************" << endl;
		cout << "选择容器的类型 " << endl;
		cout << "1 : int" << endl;
		cout << "2 : char" << endl;
		cout << "*****************************************" << endl;
		cin >> chose;
		switch (chose)
		{
		case 1:
			cout << "选择了int类型" << endl;
			do_int();
			break;
		case 2:
			cout << "选择了char类型" << endl;
			do_char();
		default:
			cout << "错误:未知类型" << endl;
			break;
		}
		cout << "结束程序吗?1:继续  0:结束" << endl;
		cin >> over;
	}
	system("pause");
}

int main()
{
	show_int_char();
	system("pause");
}

猜你喜欢

转载自blog.csdn.net/weixin_42718004/article/details/84948312