vector<string>怎么用
string就是一个串类,在stl库中可以直接定义数据类型为string,而在c中只有字符类型和数组类型,串并不是一种类型,不过可以定义为字符数组来代替。
vector就是类似于一个数组的容器,内容比数组更加全面。很多操作都有自己的函数可以直接拿过来进行使用。主要函数就是:
1、v.push_back(k); 尾插元素;
2、v.insert(it,k); 在任意位置插入元素;
3、v.eraser(it,it+k); 删除任意元素;
4、v.size(); 容量;
5、v.clear(); 清空容器;
6、v.empty(); 判断容器是否为空;
7、reverse(v.begin(),v.end());反转任意段元素
8、sort(v.begin(),v.end(),cmp);sort排序默认由小到大,cmp可以自由规定排序规则。
扩展资料
Vector类是在 java 中可以实现自动增长的对象数组,vector在C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。
vector是C++标准模板库中的部分内容,中文偶尔译作“容器”,但并不准确。它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。
vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。
参考资料来源:百度百科-vector
容器向量也是一个类模板。标准库vector类型使用须要的头文件:#include <vector>。vector 是一个类模板。不是一种数据类型,vector<int>是一种数据类型。Vector的存储空间是连续的,list不是连续存储的。
定义和初始化
vector< typeName > v1; //默认v1为空,故以下的赋值是错误的v1[0]=5;
vector<typeName>v2(v1); 或v2=v1;或vector<typeName> v2(v1.begin(), v1.end());//v2是v1的一个副本,若v1.size()>v2.size()则赋值后v2.size()被扩充为v1.size()。
vector< typeName > v3(n,i);//v3包括n个值为i的typeName类型元素
vector< typeName > v4(n); //v4含有n个值为0的元素
int a[4]={0,1,2,3,3}; vector<int> v5(a,a+5);//v5的size为5,v5被初始化为a的5个值。后一个指针要指向将被拷贝的末元素的下一位置。
vector<int> v6(v5);//v6是v5的拷贝
vector< 类型 > 标识符(最大容量,初始全部值);
扩展资料
向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。
特征
1、顺序序列
顺序容器中的元素按照严格的线性顺序排序。可以通过元素在序列中的位置访问对应的元素。
2、动态数组
支持对序列中的任意元素进行快速直接访问,甚至可以通过指针算述进行该操作。操供了在序列末尾相对快速地添加/删除元素的操作。
3、能够感知内存分配器的(Allocator-aware)
容器使用一个内存分配器对象来动态地处理它的存储需求。
参考资料来源:百度百科—向量
容器向量也是一个类模板。标准库vector类型使用须要的头文件:#include <vector>。vector 是一个类模板。不是一种数据类型,vector<int>是一种数据类型。Vector的存储空间是连续的,list不是连续存储的。
定义和初始化:
vector< typeName > v1; //默认v1为空,故以下的赋值是错误的v1[0]=5;
vector<typeName>v2(v1); 或v2=v1;或vector<typeName> v2(v1.begin(), v1.end());//v2是v1的一个副本,若v1.size()>v2.size()则赋值后v2.size()被扩充为v1.size()。
vector< typeName > v3(n,i);//v3包括n个值为i的typeName类型元素
vector< typeName > v4(n); //v4含有n个值为0的元素。
扩展资料
Vector类是在 java 中可以实现自动增长的对象数组,vector在C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。
vector是C++标准模板库中的部分内容,中文偶尔译作“容器”,但并不准确。它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。
vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。
参考资料来源:百度百科-vector
参考资料来源:百度百科—向量
#include <vector>
#include <iostream>
using namespace std;
void main()
{
vector<string> vec;//定义个一个字符串容器
string str;
str = "abc";
vec.push_back(str);//把字符串str压进容器
vec.push_back("def");//把字符串"def"压进容器
vec.push_back("123");
for(int i=0; i<vec.size(); i++)
{
cout<<vec[i]<<endl;//打印容器的内容
}
vec.pop_back();//取出容器中最后一个
for(int i=0; i<vec.size(); i++)
{
cout<<vec[i]<<endl;//打印容器的内容
}
}
有没有一次初始化的方法,而不用push_back
用这个也行哦
vec.resize(4,"abc");
一次性有4个abc
2、v.insert(it,k); 在任意位置插入元素;
3、v.eraser(it,it+k); 删除任意元素;
4、v.size(); 容量;
5、v.clear(); 清空容器;
6、v.empty(); 判断容器是否为空;
7、reverse(v.begin(),v.end());反转任意段元素
8、sort(v.begin(),v.end(),cmp);sort排序默认由小到大,cmp可以自由规定排序规则。