热文C++slice切片提取子数组 # C++里没有`slice`?别急,我们亲手“切”出子数组 刚从Python转来写C++的朋友,大概率在某个深夜盯着编辑器发过呆:“`arr[2:7]`这么清爽的切片语法,C++咋就没有?” 不是C++偷懒,是它把... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.37 K 阅读
C++gslice广义切片多维索引 # C++里的“多维切片术”:gslice如何让数组索引不再头大 写C++时,你有没有过这种时刻:手握一个三维数组,想取第0层所有偶数行、第1层特定列、第2层按步长2采样——结果发现`operator[]`只认一个下... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 583 阅读
C++mask_array布尔掩码数组 # C++ 里的 `mask_array`:一个被遗忘的布尔掩码工具,真能用吗? 你翻过 `` 头文件,可能见过 `mask_array` 这个名字——它安静地躺在 `std::valarray` 的私有接口边缘,连... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 850 阅读
C++indirect_array间接索引数组 # `indirect_array`:C++里那个被遗忘的“索引遥控器” 你有没有试过,想从一个数组里挑几个特定位置的元素做批量运算,但又不想写一长串下标?比如把 `arr[2]`, `arr[5]`, `arr[0... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 340 阅读
热文C++bitset位集合操作与效率 # `std::bitset`:不是万能胶,但真轮到“位”上见真章 上周帮同事调一个内存敏感的缓存淘汰模块,他用 `vector` 存状态位,结果在百万级 key 下频繁触发 cache line 伪共享,性能卡在 ... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.6 K 阅读
热文C++atomic_flag无锁布尔标志 # `atomic_flag`:C++里最轻量的无锁布尔开关,但别急着用它替代`atomic` 你写多线程代码时,是不是也遇到过这种场景:一个线程在忙等某个条件成立,另一个线程只负责“啪”地一下把它设为 true?比... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.61 K 阅读
热文C++memory_order内存顺序模型 # C++ memory_order:别让多线程代码在你眼皮底下“悄悄变卦” 写过多线程 C++ 代码的人,大概率都踩过这样的坑: 变量明明被另一个线程改了,本线程却读到旧值; 两个原子操作看似顺序执行,结果编译器或... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.97 K 阅读
C++kill_dependency打破依赖链 # `kill_dependency`:C++里那个“假装没看见”的内存屏障 你写过这样的代码吗? ```cpp std::atomic flag{0}; int data = 0; // 线程A data = 42... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 279 阅读
C++hardware_destructive_interference_size # `hardware_destructive_interference_size`:别再靠猜,让缓存行对齐有据可依 去年帮同事调一个高频写入的实时日志模块,性能总卡在 120 万条/秒上不去。查了半天,发现两个频繁... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 493 阅读
热文C++hardware_constructive_interference_size # `hardware_constructive_interference_size`:别再盲目对齐,先看清楚缓存线在“呼吸” 你写过这样的代码吗? ```cpp struct alignas(64) Counter... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.95 K 阅读