【C++实验】阅读STL源码并分析

任务:阅读C++11及其之后标准或STL源代码,选择其中的一个内容或一部分内容进行学习,形成研究报告。

说明:STL源码(Standard Template Library 标准库模板)实际上就是数据结构,比如:stack栈、list链表、queue队列、set集合等,所以分析 STL源码就是分析这些数据结构。

实验指南

一、打开 C语言中文网选择你想要分析 STL。


二、阅读官方对 STL的解释,例如:

#创建一个会返回临时 map 对象的函数
std::map<std::string,int> disMap() {
    
    
    std::map<std::string, int>tempMap{
    
     {
    
    "C语言教程",10},{
    
    "STL教程",20} };
    return tempMap;
}
//调用 map 类模板的移动构造函数创建 newMap 容器
std::map<std::string, int>newMap(disMap());

三、自己编写源码分析。例如:


在这里插入图片描述
在这里插入图片描述


番外篇:如何查看 stack、list、map等类的 C++源码?

  1. 打开任意一个C++文件,编写想查看的容器头文件代码。(例如这里我想查看 vector容器与 stack容器的代码)
    在这里插入图片描述
  2. 按住键盘ctrl键 加 鼠标点击容器名,即可进入源码(源码可能有几千行)。
    在这里插入图片描述