本文为在C++使用过程中的盲区与疑问记录,因为没有系统地学习过C++所以将会记录较多的基础知识。受时间限制,目前只能一点点积累基础,系统学习对时间demanding并且不面向应用,不能很好掌握。
[TOC]
STL
C++标准模板库(Standard Template Library, STL) 是一套功能强大的
vector容器
向量是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其他类型容器一样,它能够存放各种类型的对象。可以简单认为向量是一个能够存放任意类型的动态数组。
特性:顺序序列(线性顺序)、动态数组(支持对任意元素进行快速直接访问)、能够感知内存分配器的(Allocator-aware)(使用一个内存分配器对象来动态处理它的存储需求)
1 | vector(); //空 |
需要 #include < vector>
比如 vector<pair<int, int>> jobs(n)
; 再通过遍历赋值,jobs[i] = {d[i], p[i]}
就可以实现等同于python中的zip()操作。
排序
ranges::sort
C++20引入的新特性。
std::ranges::sort(numbers);
就可以完成排序。