vector相关知识点

简介: vector相关知识点

vector 底层原理

补充

vector 内存增长机制

强调1

gcc当中无参构造与有参构造的内存空间增长方式。

//无参构造
#include <iostream>
#include <vector>
using namespace std;
int main() {
  vector<int> vec1;
  for (int i = 1; i <= 10; i ++ ) {
    vec1.push_back(i);
    cout << i << "\t" << vec1.capacity() << endl;
  }
  return 0;
}

代码运行结果:

//有参构造
#include <iostream>
#include <vector>
using namespace std;
int main() {
  vector<int> vec2(10);
  cout<< "vec2.capacity :" << vec2.capacity() << endl;
  for (int i = 11; i <= 50; i ++ ) {
    vec2.push_back(i);
    cout << i << "\t" << vec2.capacity() << endl;
  }
  return 0;
}

代码运行结果:

vector 中reserve 和resize 的区别

vector的元素类型为什么不能是引用?

重点: 引用的特征:1. 引用必须初始化,不能初始化为空对象,初始化后不能改变指向;2. 引用是别名,不是对象,没有实际地址不能定义引用的指针,也不能定义引用的引用

vector 进行有参构造时,会创建空对象

充电站

推荐一个零声学院免费公开课程,个人觉得老师讲得不错,分享给大家:Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK等技术内容,立即学习


相关文章
|
22天前
|
存储 C语言 C++
C++初阶--自我实现vector
C++初阶--自我实现vector
|
8月前
|
存储 安全 Java
【面试题精讲】Vector 和 Stack 的区别?
【面试题精讲】Vector 和 Stack 的区别?
|
22天前
|
存储 编译器 C++
【C++初阶】STL详解(四)vector的模拟实现
【C++初阶】STL详解(四)vector的模拟实现
48 1
|
22天前
|
存储 编译器 C++
【C++初阶】10. vector的使用及模拟实现
【C++初阶】10. vector的使用及模拟实现
59 1
|
6月前
|
存储 算法 编译器
C++:STL第一篇vector
C++:STL第一篇vector
|
8月前
|
存储 算法 C++
C++初阶之一篇文章让你掌握vector(理解和使用)(下)
2.4 vector元素访问函数 2.4.1 operator[] reference operator[] (size_type n); const_reference operator[] (size_type n) const;
|
8月前
|
存储 编译器 C++
C++初阶之一篇文章让你掌握vector(理解和使用)(上)
1.什么是vector? 在C++中,std::vector是标准模板库(STL)中的一种动态数组容器,它可以存储任意类型的元素,并且能够自动调整大小。std::vector提供了许多方便的成员函数,使得对数组的操作更加简单和高效。
|
10月前
|
C++ 容器
c++学习之vector的实现
c++学习之vector的实现
71 0
|
10月前
|
存储 算法 编译器
【C++STL】“vector“用法 入门必备 超详细
【C++STL】“vector“用法 入门必备 超详细
|
11月前
|
存储 搜索推荐 C++
竞赛:STL之vector用法详解(关于vector这一篇就够了!)
竞赛:STL之vector用法详解(关于vector这一篇就够了!)

热门文章

最新文章