
标准库与STL
生活需要深度
这个作者很懒,什么都没留下…
展开
-
C++hash_map实现 STL
hash_map实现原创 2022-07-08 09:54:08 · 230 阅读 · 0 评论 -
C++hash_set实现 STL
hash_set stl实现原创 2022-07-08 09:53:11 · 414 阅读 · 0 评论 -
C++STL容器篇array的手动实现
前段时间写了一个通过C++ array类简单了解C++容器初始化机制_Harris_ayaka的博客-优快云博客,现在我整理一下C++ array中具体细节。详情参考array 类(C++ 标准库) | Microsoft Docsarray类首先是语法:template class array;接收两个模板参数,并且将数组的尺寸作为模板参数之一,因此两个不同大小但元素类型相同的的array将被视为不同的类型,例如:array a1;...原创 2022-07-07 20:31:53 · 838 阅读 · 0 评论 -
C++ STL中 string类的模拟实现
文章目录一、前言二、模拟实现的意义何在?三、string类的模拟实现成员函数:0.迭代器相关函数begin 函数end 函数1.构造函数2.析构函数(关于深浅拷贝问题)3.拷贝构造函数4.赋值重载函数5. swap 函数6. c_str 函数7. operator[] 函数8. size 函数9. reserve 函数10. resize 函数11. insert 函数12. erase 函数13. push_back 函数14. append 函数15. op原创 2022-07-07 20:28:43 · 179 阅读 · 0 评论 -
C++ STL中 list 的模拟实现
文章目录一、前言二、模拟实现的意义何在?三、list 的模拟实现类模板:1. ListNode(关于 list 的正向迭代器)2.正向迭代器反向迭代器(适配器)- - - - - - - - - - - - -3. list成员函数:0.迭代器相关函数正向迭代器反向迭代器1.构造函数2.析构函数3.拷贝构造函数4.赋值重载函数5. insert 函数6. erase 函数7. push_front 函数8. push_back 函数9. pop_front 函数原创 2022-07-07 20:27:43 · 186 阅读 · 0 评论 -
C++ STL中 vector 的模拟实现
一、前言二、模拟实现的意义何在?三、vector 的模拟实现成员函数:0.迭代器相关函数begin 函数end 函数1.构造函数2.析构函数3.拷贝构造函数4.赋值重载函数5. size 函数6. capacity 函数7. swap 函数8. operator[] 函数9. reserve 函数10. resize 函数11. insert 函数12. erase 函数(迭代器失效)13. push_back 函数14. pop_back 函数一、前言在C++原创 2022-07-07 20:26:46 · 197 阅读 · 0 评论 -
C++红黑树模拟实现map和set
C++红黑树模拟实现map和set零、前言一、红黑树及其节点的设计1、树节点的设计2、红黑树的设计3、取值仿函数的使用二、红黑树的迭代器1、begin()与end()2、operator++()与operator--()3、正反迭代器的实现三、map和set的实现1、红黑树的实现2、map的封装3、set的封装零、前言本章是继红黑树的介绍和实现后,讲解使用红黑树来封装实现map和set一、红黑树及其节点的设计对于底层都是红黑树的map和set来说,他们之间存在的最大的区别就是原创 2022-07-07 17:26:31 · 260 阅读 · 0 评论 -
STL基本容器测试
标准STL原创 2022-06-20 15:57:07 · 345 阅读 · 0 评论 -
基本输入输出
只有模板定义过程中,typename和class是共用的,主要是在C++开始的时候借用了class这个词,后来模板的概念出来了才有了typename这个词。原创 2022-02-21 18:13:40 · 222 阅读 · 0 评论 -
时间与日期 标准库C/C++
实际项目开发过程中对时间有需求,获取时间戳信息,与数据匹配可以进行故障定位。另外,还可以使用时间戳计算时间差,进行代码新能确定或者进行各种速率计算。C++ 标准库没有提供所谓的日期类型。C++ 继承了 C 语言用于日期和时间操作的结构和函数。为了使用日期和时间相关的函数和结构,需要在 C++ 程序中引用 <ctime> 头文件。有四个与时间相关的类型:clock_t、time_t、size_t 和 tm。类型 clock_t、size_t 和 time_t 能够把系统时间和日期表示为某种整数原创 2022-02-23 09:41:06 · 740 阅读 · 0 评论 -
多线程编程 C++
1.构造函数类的构造函数是类的一种特殊的成员函数,它会在每次创建类的新对象时执行。构造函数的名称与类的名称是完全相同的,并且不返回任何类型,也不会返回void。构造函数可以为某些成员函数设置初始值。1.1. 初始化列表为某些成员函数设置初始值,可以在{}内完成,推荐大气编程方式变量都应该使用初值列表。初始化列表包含默认参数和初始化列表赋值。使用初始化列表是需要注意:(1)成员的初始化顺序与成员的声明顺序相同;(2)成员的初始化话顺序与初始化列表中的位置无关;(3)成员出丝滑列表优先于构造函数体执原创 2022-01-28 09:23:14 · 472 阅读 · 0 评论 -
文件与流 C++
到目前为止,我们已经使用了iostream标准库,它提供了cin和cout方法分别用于从标准输入读取流和向标准输出写入流。本教程介绍如何从文件读取流和向文件写入流。这就需要用到 C++ 中另一个标准库fstream,它定义了三个新的数据类型:数据类型 描述 ofstream 该数据类型表示输出文件流,用于创建文件并向文件写入信息。 ifstream 该数据类型表示输入文件流,用于从文件读取信息。 fstream 该数据类型通常表示文件流,且同时具有 ...转载 2022-02-23 09:33:30 · 93 阅读 · 0 评论 -
<cstdlib> stdlib.h头文件
#include <stdio.h>#include <stdlib.h>#include <time.h>#include <string.h>/* run this program using the console pauser or add your own getch, system("pause") or input loop */int main(int argc, char** argv) { #if 0 cha...原创 2022-01-21 19:37:02 · 514 阅读 · 0 评论 -
Traits 萃取技术与迭代器设计原则
traits,又被叫做特性萃取技术,说得简单点就是提取“被传进的对象”对应的返回类型,让同一个接口实现对应的功能。因为STL的算法和容器是分离的,两者通过迭代器链接。算法的实现并不知道自己被传进来什么。萃取器相当于在接口和实现之间加一层封装,来隐藏一些细节并协助调用合适的方法,这需要一些技巧(例如,偏特化)。最后附带一个小小的例子,应该能更好地理解 特性萃取。 下面大部分来源于《STL源码剖析》,看原书能了解更多细节。Traits编程技法 让我们一点点抛出问题,然后一点点深入。原创 2022-02-18 16:31:36 · 358 阅读 · 0 评论 -
容器基本分类
通过复核的方式来实现代码设计,尽量不适用继承方式来减少不必要的类耦合关系。原创 2022-02-17 18:00:34 · 635 阅读 · 0 评论 -
线性表 - 双向list STL库
C++包含了C语言的所有特性,也包含了C语言的库。所以,C++标准库包含两部分。一,标准函数库。这个库由通用的、独立的、不属于任何类的函数组成,继承自C语言。二,面向对象库。这个库是类及其相关函数的集合。C++标准库包含了所有的C标准库,为了支持类型安全做了一定的添加和修改。...原创 2022-01-29 17:48:11 · 739 阅读 · 0 评论 -
<cstring> string.h
#include <stdio.h>#include <stdlib.h>#include <string.h>/* run this program using the console pauser or add your own getch, system("pause") or input loop */int main(int argc, char** argv) { #if 0 char str[256]; // strcpy(s...原创 2022-01-22 10:31:05 · 451 阅读 · 0 评论 -
C标准库头文件列表
<cassert> (assert.h)C Diagnostics Library(header)<cctype> (ctype.h)Character handling functions(header)<cerrno> (errno.h)C Errors(header)<cfloat> (float.h)Characteristics of floating-point types(header)<ciso64...原创 2022-01-22 13:46:27 · 822 阅读 · 0 评论 -
标准库体系结构 C++
STL基本体系结构介绍原创 2021-11-25 17:52:45 · 312 阅读 · 0 评论