C++标准库vector使用(更新中...)

内容:

vector()  //构造函数

1.vector构造函数

default (1)    explicit vector (const allocator_type& alloc = allocator_type());//默认情况下  vector<int> vec;
fill (2)    explicit vector (size_type n);//只给定vector的大小   vector<int> first(10);
           vector (size_type n, const value_type& val,const allocator_type& alloc = allocator_type());//给定vector的大小和初值 vector<int> second (4,100); 

range (3)    template <class InputIterator>        vector (InputIterator first, InputIterator last,const allocator_type& alloc = allocator_type());                //用另一个vector的给定范围迭代器初始化 vector<int> third (second.begin(),second.end());
copy (4) vector (const vector& x);//拷贝构造   vector<int> fourth (third);       vector (const vector& x, const allocator_type& alloc);//拷贝构造指定内存分配器   

move (5) vector (vector&& x);//构造一个获取容器x的元素的容器,如果指定了alloc并且与x的allocator不同,则移动元素。 否则,不构建任何元素(它们的所有权直接转移)。
      vector (vector&& x, const allocator_type& alloc); 

initializer list (6)   vector (initializer_list<value_type> il,const allocator_type& alloc = allocator_type());//初始化列表初始化 vector<int> nums{2,7,11,15};

原文地址:https://www.cnblogs.com/jainszhang/p/10661317.html

时间: 2024-10-15 07:16:16

C++标准库vector使用(更新中...)的相关文章

把《c++ primer》读薄(3-2 标准库vector容器+迭代器初探)

督促读书,总结精华,提炼笔记,抛砖引玉,有不合适的地方,欢迎留言指正. 标准库vector类型初探,同一种类型的对象的集合(类似数组),是一个类模版而不是数据类型,学名容器,负责管理 和 存储的元素 相关的内存,因为vetcor是类模版,对应多个不同类型,比如int,string,或者自己定义的数据类型等. 程序开头应如下声明 #include <iostream> #include <vector> #include <string> using std::strin

C++标准库vector以及迭代器

今天看C++的书,出现了一个新的概念,容器vector以及容器迭代器. vector是同一种对象的集合,每个对象都有一个对应的整数索引值.和string对象一样,标准库将负责管理与存储元素相关的类存.引入头文件 #include<vector> 1.vector对象的定义和初始化 1 vector<T> v1 vector保存类型为T的对象.默认构造函数,v1为空 2 vector<T> v2(v1) v2是v1的一个副本 3 vector<T> v3(n,

走进C标准库(7)——"string.h"中函数的实现memcmp,memcpy,memmove,memset

我的memcmp: 1 int memcmp(void *buf1, void *buf2, unsigned int count){ 2 int reval; 3 while(count && !(reval = (*(unsigned char *)buf1) - (*(unsigned char *)buf2))) 4 { 5 buf1 = (unsigned char *)buf1 + 1; 6 buf2 = (unsigned char *)buf2 + 1; 7 --count

C++标准库vector及迭代器

vector是同一种对象的集合,每个对象都有一个对应的整数索引值.和string对象一样,标准库将负责管理与存储元素相关的类存.引入头文件 #include<vector> 1.vector对象的定义和初始化 [cpp] view plain copy vector<T> v1             vector保存类型为T的对象.默认构造函数,v1为空 vector<T> v2(v1)         v2是v1的一个副本 vector<T> v3(n,

C++标准库vector类型的使用和操作总结

vector是一种类型对象的集合,它是一种顺序容器,容器中的所有对象必须都是同一种类型.vector的对象是可以动态生长的,这说明它在初始化时可以不用指定大小,而是再使用时根据元素所需的空间动态增长.C++中还有一种常见的类型string,它和vector有很多相似之处,具体可以看<C++标准库string类型的使用和操作总结>这篇博文.下面简单介绍一下vector容器的使用和操作. 一.声明和初始化 使用vector之前必须在程序前的库包含中包含相应的头文件,如下: #include<

走进C标准库(8)——"string.h"中函数的实现相关字符串操作函数

我的strcat: 1 char *strcat(char *dest,char *src) 2 { 3 char * reval = dest; 4 while(*dest) 5 dest++; 6 while(*src) 7 *dest++ = *src++ ; 8 *dest = *src; 9 return reval; 10 } MSVC: 1 char * __cdecl strcat ( 2 char * dst, 3 const char * src 4 ) 5 { 6 char

C++温习-标准库-vector

vector是C++中最基本的顺序容器,可把它看作是一个自动可变长度的数组来使用,使用中,比直接定义数组来使用方便,但运行效率会比数组低一些. vector的内部实现,还是数组的形式,当新插入数据使得大于容量时,就会进行重新分配空间,并移动数据,vector并不是每次插入新的数据都重新分配空间,并且移动数据,毕竟这样的效率太低了,通常,它是会新开一个大一些的空间,来避免过于频繁的分配空间和移动数据. vector 当然也是类模板. template < class T, class Alloc

关于Nicolai M. Josuttis编写,侯杰译的《C++标准库》第二版中提到的mutable主题的一点看法。

详见<C++标准库>第二版,P30.对原文总结如下: mutable: 通过by value的形式传递母函数体内可见的变量. 你有权利修改传入的值. 可把传入变量视为私有的成员变量,原文:int id. 我的看法是:以上第三点应加上:static限定符,应为每次调用都是延续着上一次改变. 原文地址:https://www.cnblogs.com/LeiFeng1000/p/12635303.html

走进C标准库(6)——"string.h"中函数的实现memchr

我写的memchr: 1 void *memchr(const void *buf, char ch, unsigned count){ 2 unsigned int cnt = 0; 3 while(*(buf++) != ch && cnt <= count){cnt++;} 4 if(cnt > count) 5 return NULL; 6 else 7 return buf; 8 } 红色部分报错. 该错误为为ANSIC中认定的错误,是因为它坚持:进行算法操作的指针必