热文C++享元模式共享细粒度对象 # 享元模式:当C++程序里“重复造轮子”变成“共享螺丝钉” 写过图形编辑器或文字处理软件的人大概都踩过这个坑:画布上成百上千个字符、图标、小方块,每个对象都单独分配内存、各自维护状态——结果程序一开就吃掉几百MB,... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.47 K 阅读
C++备忘录模式保存恢复状态 # C++备忘录模式:别让对象“失忆”,手把手存档+回滚状态 写过游戏存档功能吗?改完配置又想一键退回上一步?或者调试时反复试错,却总得手动重置一堆变量?这些场景背后,其实都在呼唤一个轻量但关键的设计模式——**备忘... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 482 阅读
热文C++中介者模式降低耦合度 # 用中介者模式“拉群聊”,让C++对象不再私聊到崩溃 写过中大型C++项目的人都懂:当一个模块里 `WidgetA` 要通知 `ServiceB`,`ServiceB` 又得同步状态给 `LoggerC`,而 `L... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 2 K 阅读
C++解释器模式语言文法解析 # C++里写个“小语言”?解释器模式不是玩具,是文法解析的务实入口 上周帮同事调一个配置热加载模块,他用硬编码的 if-else 判断几十种表达式语法,改一次逻辑要编译三分钟。我顺手把那堆分支抽出来,用解释器模式重... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 529 阅读
C++访问者模式操作元素结构 # 访问者模式:让C++结构体“自己开口说它能干啥” 上周帮同事调一个图形渲染模块,他写了七八个形状类(Circle、Rect、Triangle……),每个都得支持序列化、碰撞检测、OpenGL绘制三套逻辑。结果改个... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 747 阅读
C++CRTP奇异递归模板模式 # CRTP:C++里那个“自己继承自己”的聪明 trick 你有没有写过这样的代码:想让基类能调用派生类的函数,又不想用虚函数——毕竟虚表开销、动态绑定、多态那套太重了?或者你试过 `static_cast(thi... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 775 阅读
热文C++SFINAE替代失败不是错误 # SFINAE:不是报错,是悄悄退场 你写了个模板函数,传入 `std::vector` 没问题,可一换 `int*` 就编译失败——错误信息里还夹着一长串 `no type named 'value_type' ... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.81 K 阅读
热文C++enable_if条件编译模板 # `enable_if` 不是魔法,是带开关的模板车间 写 C++ 模板时,你有没有遇到过这种尴尬: 想让某个函数只对整数类型生效,结果 `std::string` 一传进去,编译器直接甩给你半屏错误——不是语义错... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.4 K 阅读
C++type_traits类型特征查询 # C++里怎么“问”一个类型它自己长啥样?——type_traits实战手记 写模板代码时,你有没有过这种瞬间: 明明传进来的`T`是`int`,可偏偏要为`std::string`多加一层`if constexp... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 818 阅读
热文C++is_same判断类型是否相同 # `is_same` 不是“判断两个类型长得像不像”,而是“它们是不是同一个类型” 写模板代码时,你有没有遇到过这种场景:函数要根据传入的类型做不同处理,比如 `int` 就直接算,`std::string` 就得... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.63 K 阅读