码迷,mamicode.com
首页 > 其他好文 > 详细

STL— vector(基础)

时间:2020-03-06 19:12:44      阅读:55      评论:0      收藏:0      [点我收藏+]

标签:tps   aik   内存   缺省   int   ++   sig   初始化   一个   

 基本摘抄自百度百科

 

 

1,使用条件

头文件   <vector>     和   using namespace std;  (因为他是属于 C++ 的)

 

2,  定义:简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。(度娘)

 

3,使用 :

vector <int> c;       //  长度未知,未初始化

vector <int> c(10);     //  长度为 10 ,未初始化

vector <int> c(10,1); //  长度为 10 ,全部初始化为 1

 

4,函数

c.assign(beg,end):将[beg; end)区间中的数据赋值给c。

c.assign(n,elem):将n个elem的拷贝赋值给c。 

c.back():传回最后一个数据,不检查这个数据是否存在。

c.front():传回第一个数据

c.empty(): 空返回true,否则返回false

 

vector添加数据的缺省方法是push_back(),  而不能直接用下标赋值。因为他是动态分配内存的,使用下标只能用来获取已经存在的元素 ,它并不能分配内存给新加进来的数据

push_back():   函数表示将数据添加到vector的尾部,并按需要来分配内存。

 

5,打印

根据其数据类型,与相同类型的数组操作基本一样

 

6,缺点

时间:运行速度与数组相比较慢

空间:clear() 无法清空内存。
 
 
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<vector>
using namespace std;
int main(void)
{
    vector<int>c(10);
    for (int i = 0; i < 10; ++i)
    {
        c[i] = i;
    }
    printf("%d\n", c[2]);

    system("pause");
    return 0;
}

 

 

STL— vector(基础)

标签:tps   aik   内存   缺省   int   ++   sig   初始化   一个   

原文地址:https://www.cnblogs.com/asdfknjhu/p/12428051.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!