【c++程序】vector和模板用法

来源:互联网 发布:java将信息写入文件 编辑:程序博客网 时间:2024/06/05 23:58
#ifndef PRINT_H#define PRINT_H //输出一个指定区间中的所有数据template<typename T>void print(T b,T e){    while(b!=e)        cout<<*b++<<' ';    cout<<endl;}#endif // !PRINT_H
//只关注指针,开始和结束指针#include<iostream>using namespace std;#include<deque>#include<vector>#include"print.h"#include<string>int main(){    int a[5]={33,22,11,55,44};    vector<int>vi(a,a+5);//vector( input_iterator start, input_iterator end );    cout<<vi.size()<<endl;    sort(vi.begin(),vi.end());//只能数组、vector和deque可以排序    //sort(a,a+5);    vector<int>::iterator b=vi.begin();    while(b!=vi.end())    {        cout<<*b++<<' ';    }    cout<<endl;    for(int i=0;i<5;i++)        cout<<a[i]<<endl;    cout<<endl;    print(vi.begin(),vi.end());    print(a,a+5);    print(vi.rbegin(),vi.rend());    vi.insert(++++vi.begin(),66);//加加两次    print(vi.begin(),vi.end());    cout<<vi.size()<<'/'<<vi.max_size()<<endl;    vi.erase(------vi.end());    print(vi.begin(),vi.end());    vi.erase(++++vi.begin(),--vi.end());    print(vi.begin(),vi.end());    vector<int> v2(a,a+5);    print(v2.begin(),v2.end());    vi.swap(v2);    print(v2.begin(),v2.end());    print(vi.begin(),vi.end());    cout<<"*************************"<<endl;    swap(vi,v2);    print(v2.begin(),v2.end());    print(vi.begin(),vi.end());    cout<<"*************************"<<endl;    vector<int> t=vi;    vi=v2;    v2=t;    print(v2.begin(),v2.end());    print(vi.begin(),vi.end());    cout<<vi.size()<<endl;}

这里写图片描述

0 0
原创粉丝点击