容器基础知识

来源:互联网 发布:mysql从excel导入数据 编辑:程序博客网 时间:2024/05/22 16:42

1.   初始化vector(包含头文件include <vector>)

vector<int> v1;vector<int>v2(v1); //v1与v2同类型,用 v1初始化vector<int> v3=v1;vetor <int> v4(10,100); //十个元素每个值都是100vector<int> v5(100); //v5里有100个元素都是0vector<string> v6;

2.   基本操作

v6.push_back(“hello world”);//容器末尾添加 hello worldv6.push_back(50);v4.pop_back();//从容器末尾删除,是没有返回值的int nNum=v4[2];//访问v4.at(2);//访问v4.front;//返回最前面的一个元素v4.back;//返回最后面的一个元素v4.size();//返回元素个数v4.empty();//返回值是布尔类型的v1==v2;v1>=v2;//支持标准的运算符

3.实例

#include <iostream>#include <string>#include <vector>using namespace std;int main(){string str;//用来保存键盘接受的数据vector<string> v;while(getline(cin,str)){if(str=="q"){break;}v.push_back(str);}int nChars=0;//字符数for(int i=0;i<v.size();i++)//遍历vector{string s=v[i];nChars+=s.size();}cout<<"total lines: "<<v.size()<<" "<<"total chars"<<nChars<<endl;for(int i=0;i<v.size();i++){string s=v[i];cout<<i<<" "<<s<<s.size()<<endl;}return 0;}


在vc++6.0中第二个for循环的i会编译出错,提示i被重定义,但在vs2015中运行并未报错。

1 0
原创粉丝点击