
简介
该用户还未填写简介
擅长的技术栈
未填写擅长的技术栈
可提供的服务
暂无可提供的服务
【C++】vector的模拟实现
本文介绍了C++中vector的模拟实现方法。vector作为顺序表的模板类实现,通过三个指针(_start、_finish、_endofstorage)管理动态数组,分别指向数据起始、有效元素末尾和分配空间末尾。文章详细讲解了vector的核心设计,包括成员变量布局、迭代器实现、基本接口和构造/析构函数。重点剖析了动态扩容机制(reserve和push_back)、插入删除操作,以及拷贝构造中的
【C++】stack/queue模拟实现及deque讲解
C++ STL中的std::deque(双端队列)是一种支持两端高效操作的分段连续容器,兼具栈和队列的特性。作为stack和queue的默认底层容器,它通过中控数组管理多个缓冲区,实现O(1)时间复杂度的头尾插入删除,同时支持随机访问。与vector和list相比,deque在头部操作和内存连续性上取得平衡,适用于需要频繁两端操作的场景。本文通过模拟实现stack和queue类模板,展示了容器适配
【C++】string的模拟实现
本文实现了一个自定义字符串类string,包含以下核心功能:1. 采用动态内存管理,支持SSO优化(短字符串使用栈内存);2. 提供完整迭代器支持,可通过范围for遍历;3. 实现深拷贝构造/赋值,避免内存问题;4. 支持常用字符串操作(增删改查、比较、子串等);5. 重载流操作符实现输入输出;6. 通过缓冲区优化提升输入效率。关键特性包括:内存自动扩容、安全的边界检查、高效的swap操作,以及传
到底了







