vector快速入门

1,vectord的定义方式为:

vector</*数据类型*/>/*名称*/;
//比如:
vector<int>vec;

2,用push_back(/*元素*/)可以在动态数组最后插入一个新的元素,比如:

vector<int>vec;//目前:[]
vec.push_back(1);//目前:[1]
vec.push_back(2);//目前:[1,2]
vec.push_back(3);//目前:[1,2,3]

 当然你如果想删除元素,可以使用pop_back()删除动态数组中最后一个元素。注意这里括号内不要加任何东西;注意!如果动态数组内已为空再使用pop_back会出错!

vector<int>vec;//目前:[]
vec.push_back(1);//目前:[1]
vec.push_back(2);//目前:[1,2]
vec.push_back(3);//目前:[1,2,3]
vec.pop_back();//目前:[1,2]
vec.pop_back();//目前:[1]
vec.pop_back();//目前:[]
vec.pop_back();//出错

3,访问动态数组的长度用:

/*数组名称*/.size()
比如:
vec.size();

4,访问动态数组中的某个元素跟普通的数组访问方式一样,比如:

vec[0]

 但是需要注意不要超过数组大小范围。动态数组大小范围为:

vec.size()-1

5,输出动态数组里所有的数:

vector<int>cev;
for(int i=0;i<vec.size();i++)
{cout<<vec[i]<<" ";}

 6,如果你想修改动态数组中的某个值也跟普通数组一样:

vector<int>vec;
vec.push_back(1);
vec.push_back(2);
vec[0]=2;
vec[1]=1;

7,动态数组清空所以数据且释放内存格式为:

vector</*数据类型*/>().swap(/*名称*/);
比如:
vector<int>().swap(vec);

8,可以使用/*名称*/.empty()来检测这个动态数组的大小是否为0;

9,动态数组可以整体赋值:

vector<int>vec1;
vector<int>vrc2;
vec1.push_back(1);
vec2.push_back(2);
vec2=vec1;

10,动态数组的排序需要使用迭代器

//全排序:
sort(vec.begin(),vec.end());
//排序前面3数:
sort(vec.begin(),vec.begin()+3);

11,vector数据类型也可以自定义:

struct Stu{
    string name;
    int score;
};
int main(){
victor<Stu>vec;
}

12,定义结构体数据类型对于动态数组的常见操作:

struct Stu{
    string name;
    int score;
};
int main(){
victor<Stu>vec;
Stu a;//定义学生a
a.name="abc";//赋值
a.score=100;
vec.push_back(a);//将a压入vec
vec.push_back({"abcd",90});//或者这样一部完成
}

13,将动态数组初始化一个数或数组大小:

//vector</*数组类型*/>/*数组名*/(/*大小*/,/*值*/);
vector<int>vec(100,0);//设置大小为100且所有数为0的动态数组

相关推荐

  1. vector快速入门

    2024-03-31 03:20:02       47 阅读
  2. <span style='color:red;'>vector</span>

    vector

    2024-03-31 03:20:02      33 阅读
  3. Flask 快速入门

    2024-03-31 03:20:02       61 阅读
  4. Spring Boot 快速入门

    2024-03-31 03:20:02       55 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-31 03:20:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-31 03:20:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-31 03:20:02       87 阅读
  4. Python语言-面向对象

    2024-03-31 03:20:02       96 阅读

热门阅读

  1. 【MySQL】MySQL中SQL语句的索引分析

    2024-03-31 03:20:02       37 阅读
  2. QT5.14.2 码上热浪,用Qt5狂暴轰入多媒体狂潮

    2024-03-31 03:20:02       39 阅读
  3. IMBoy项目的缓存机制:高效数据处理的秘诀

    2024-03-31 03:20:02       40 阅读
  4. 韦东山TCP/UDP编程

    2024-03-31 03:20:02       38 阅读
  5. MySQL5.7源码分析--连接

    2024-03-31 03:20:02       47 阅读
  6. 花钱的艺术:消费和投资如何分配

    2024-03-31 03:20:02       38 阅读
  7. WebAPI调优

    2024-03-31 03:20:02       39 阅读
  8. LeetCode-热题100:208. 实现 Trie (前缀树)

    2024-03-31 03:20:02       40 阅读
  9. Vuex工作机制

    2024-03-31 03:20:02       45 阅读