热文C++add_pointer添加指针类型 # `add_pointer`:不是“加个星号”那么简单 写模板代码时,你有没有遇到过这种场景:函数接收一个类型 `T`,但内部需要操作它的指针版本?比如想把 `int` 变成 `int*`,把 `std::stri... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.69 K 阅读
C++make_signed与make_unsigned # `make_signed` 和 `make_unsigned`:类型转换里被忽略的“安全开关” 写C++模板代码时,你有没有遇到过这种场景: 函数接收一个 `size_t` 参数,你想对它做减法,但一不小心减成负... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 553 阅读
热文C++alignment_of内存对齐查询 # `alignof`:C++里那个总被忽略的“内存尺子” 写C++时,你有没有遇到过这样的场景:结构体明明只存了几个int和char,`sizeof`却返回24而不是12?或者把自定义类型传给SIMD函数,程序在某... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.8 K 阅读
C++aligned_storage对齐存储空间 # `aligned_storage`:C++里那个“不声不响却总在关键时刻顶上的对齐工具” 你有没有写过这样的代码:手动分配一块内存,再用 placement new 构造对象,结果运行时崩在构造函数第一行?或者调... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 628 阅读
热文C++integer_sequence整数序列 # `integer_sequence`:C++里那个不声不响却撑起元编程骨架的“整数清单” 你有没有写过这样的模板函数: ```cpp template void print_tuple_impl(... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.67 K 阅读
C++index_sequence展开参数包 # `index_sequence`:C++参数包展开的“索引扳手” 写模板时,你有没有遇到过这种场景: 函数接收一个可变参数包(比如 `template void foo(Ts&&... args)`),但你想对每... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 258 阅读
热文C++variadic_templates可变参数 # C++ 可变参数模板:不是“万能胶”,但真能帮你少写八成重复代码 上周帮同事看一段日志模块的代码,他写了七个重载函数:`log(string)`、`log(string, int)`、`log(string, i... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.48 K 阅读
C++parameter_pack参数包展开 # C++参数包展开:不是“解包魔法”,而是编译期的精密装配线 写模板时遇到 `template`,你第一反应是不是——“哦,这是个万能接口”?然后顺手扔进 `std::forward(args)...`... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 339 阅读
C++fold_expressions折叠表达式 # C++17里的“连珠炮”:fold expressions到底怎么用才不翻车? 你有没有写过这样的函数模板? ```cpp template auto sum(Args&&... args) { retu... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 903 阅读
热文C++concepts约束模板参数 # C++ Concepts:别再让模板报错像拆盲盒了 写过模板的人,大概都经历过这种时刻:改完一行代码,编译器甩给你两百行错误,从 `std::vector` 一直追溯到你写的 `foo`,中间夹着七八个 `ena... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.42 K 阅读