最新 最热

【C++】vector(上)

vector类似于数组,采用连续存储空间来存储元素,可以用下标对vector元素进行访问,但它的大小是可以动态改变的,而且这个改变可以被容器自动处理

2024-08-29
1

【c++】 C语言的输入与输出&&C++的IO流&&STL空间配置器

“流”即是流动的意思,是物质从一处向另一处流动的过程,是对一种有序连续且具有方向性的数据( 其单位可以是bit,byte,packet )的抽象描述

2024-08-29
1

【C++11】入门基础

C++11是C++编程语言的一个重要版本,它于2011年发布。相比于C++98/03,C++11给C++带来了数量可观的变化,其中包含了约140个新特性,以及对C++03标准中约600个缺陷的修正,这使得C++11更像是从C++98/03中孕育出的一种新语言。C+...

2024-08-29
1

【C++深度探索】unordered_set、unordered_map封装

前面我们学习过红黑树实现map、set的封装,而unordered_set和unordered_map的功能与map和set类似,所不同的是其存储元素是无序的,底层是使用哈希表,所以今天我们就可以利用之前学习过的哈希表的实现,来对C++STL库中的unorde...

2024-08-29
1

【C++深度探索】哈希表介绍与实现

在顺序结构以及平衡树中,元素值与其存储位置之间没有对应的关系,因此在查找一个元素时,必须要经过元素值的多次比较。其中顺序结构查找的时间复杂度为O(N),平衡树中查找的复杂度为为树的高度,即O(...

2024-08-29
1

C++奇迹之旅:双向链表容器list的灵活使用技巧

std::list 是 C++ 标准库中的一个序列容器,它实现了双向链表(doubly linked list)。

2024-08-29
1

C++奇迹之旅:手写vector模拟实现与你探索vector 容器的核心机制与使用技巧

我们先定义自己的命名空间俩封装自定义的vector类,这样可以避免与标准库中的 vector 发生命名冲突。随即,我们定义模版类vector,三个成员变量都是迭代器,而vector迭代器又是原生指针,所以我们将指针取别名为iterator...

2024-08-29
1

C++中负数取余的规则

在C++中,对于整数类型(int)进行除法运算并取余数时,当被除数或除数为负数时,可能会出现一些意料之外的结果。

2024-08-28
1

OpenHarmony开源三方库的cmake在IDE上直接引用的问题

DevEco Studio的native工程的C/C++部分当前只支持cmake脚本的编译,工程的目录结构如下图所示

2024-08-27
1

从零开始编写一个cmake构建脚本

PROJECT_NAME工程的版本号时 0.0.0,该版本号会被三个cmake内置变量所继承,例如主版本号PROJECT_VERSION_MAJOR=0,次版本号PROJECT_VERSION_MINOR=0,补丁版本号PROJECT_VERSION_PATCH=0,后续可以直接使用这三个内置变量来使...

2024-08-26
1