Klizzz's blog

Stl迭代器

[TOC] 1. STL 迭代器 在 C++ 的标准模板库(STL)中,迭代器是用来遍历或访问容器中元素的对象,类似于指针。它们提供了一种通用的方法来访问容器的内容,无论容器的底层实现是什么样的。1 1.1 迭代器的作用 访问容器元素:迭代器提供了一种方法来按顺序访问容器中的元素,而不必知道容器的内部结构。 容器与算法的桥梁:STL 中的算法,如 sort, find, a...

Stl容器

[TOC] 容器的简单概念 一些重要的容器及其简要介绍: (1)向量(std::vector) 内存结构:动态数组,支持快速随机访问。通常使用较少的内存,因为它仅存储实际的元素。 实现原理:动态数组,在内存中连续存储元素,自动调整大小以容纳更多元素。当超出当前容量时,会分配一个更大的内存块,复制现有元素,并释放旧的内存。 性能特点: 提供高效的随机...

Bug:mfc中ctreectrl 的光标选中问题

当用鼠标选中 CTreeCtrl 中的一个节点时,被选中的节点变成了深蓝色的光标选中状态。这时我要它那种深蓝色的光标一直存在,直到我点击选中其他节点。 现在的情况是:被选中的节点变成了深蓝色的光标选中状态以后,当鼠标移出当前对话框后,深蓝色的光标就看不到了。 解决方法: 把 tree 的 show selection always 选中:这种方法的效果就是,当鼠标移出 t...

数据类型 Tuple

[TOC] 一、std::tuple简介 tuple是一个标准库类模板,用于存储固定数量的异类对象。允许将多个对象捆绑成一个单一的对象,并且可以轻松地从中提取值或者通过结构化绑定将其解构到不同的变量中。1 tuple提供了一个通用的数据结构,可以保存不同类型的元素,并通过下标或者std::get函数来访问其中的值。 C++11引入了最初的tuple实现, C++17进一步扩展了其功能...

数据类型 Bitset与位运算

[TOC] C++位运算 按位运算是C++中最基本的位操作,主要用于直接操作数据的二进制表示。C++提供了几种按位运算符: 按位与 &:对两个数的每一对应位进行与运算,只有两个对应位都为1时结果才为1。 按位或 |:对两个数的每一对应位进行或运算,只要其中一个位为1,结果就为1。 按位异或 ^:对两个数的每一对应位进行异或运算,当两个对应位不同时,结果为1。 ...