首页 > 编程知识 正文

vector的sort,vector不是std的成员

时间:2023-05-04 04:22:46 阅读:55996 作者:1602

要使用矢量,头文件中必须包含以下代码:

#包含

因为向量属于std命名域,所以需要命名限制,可以放在文件的开头

using std:vector; 或using namespace std;

或者,在使用vector代码之前前缀: std:vector myHouse;

)1)可以像普通数组一样访问:

vecMyHouse[50]=1024;

)2)依次向容器中填充数据

for(I=0; i 25; I )

{

VECmyhouse.push_back(I;

}

)3)动态改变其大小

vecmyhouse.resize(400;

)4)在容器中放入自定义数据类型

自定义类

class Cmyclass

{

(;

定义盛放class的容器

vector vecMyHouse;

)5)定义容器时可以给出初始值

定义存储//100个int型数据的容器,使初始值为0

vectorvecmyhouse (100,0 );

)6)可以将一个容器的对象分配给另一个容器

定义存储//100个int型数据的容器,使初始值为0

vectorvecmyhouse (100,0 );

//定义新容器,内容与上述容器相同

vector myVec;

myVec=vecMyHouse;

)7)部分常用功能

std:vector c;

//可用功能

c .删除c.clear ()//容器中的所有数据。

c .判断c.empty ()//容器是否为空。

c .删除c.erase(pos )//pos位置的数据

c.erase(Beg,end ) /删除) Beg,end )区间的数据

c.front ()//返回第一个数据。

c .在c.insert(pos,elem )//pos位置插入elem副本

c .删除c.pop_back最后的数据。

c .将数据添加到c.push_back(Elem )//末尾。

c .重新调整大小(num ) /容器

c.size ()//返回容器中实际数据的数量。

c .返回指向c.begin ()//容器的第一个元素的迭代器

c .返回指向end ()//容器中最后一个元素的迭代器

(8)迭代器

迭代器相当于指针,对于变量,可以使用指针指向相应的变量,然后使用*操作该变量

int a=10;

int *p;

p=a; //使用指针操作此变量

*p=11; //操作时a为11

对于容器,请使用迭代器操作容器中相应位置的值

如果迭代器指向容器中的位置,则可以使用*迭代器操作该位置

(9)迭代器和向量的使用方法

//定义向量

std:vector myVec;

//添加10个元素

for(intj=0; j10; j )

{

myvec.push_back(j;

}

//定义迭代器

STD : vector :3360 iterator p;

//指向容器的第一个元素

p=myVec.begin (;

//移动到下一个元素

p;

//修改该元素的赋值

*p=20; myVec容器的第二个值更改为20

//扫描迭代器以改变所有值

p=myVec.begin (;

for (; p!=myVec.end (; p )

{

*p=50;

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。