STL學習_vector_1
阿新 • • 發佈:2018-12-13
#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"); }