热文C++状态模式状态行为切换 # C++状态模式:让对象“自己决定下一步怎么活” 写过状态机代码的人,大概都踩过这样的坑:用一长串 `if-else if` 判断当前状态,再调一堆 `switch` 处理行为;改一个状态逻辑,得翻三四个文件,加个... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.9 K 阅读
热文C++迭代器模式遍历聚合对象 # C++里,迭代器不是“遍历工具”,而是“访问协议” 刚学C++那会儿,我总把`std::vector::iterator`当成一个“高级for循环指针”——写个`for (auto it = v.begin();... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.43 K 阅读
热文C++组合模式树形结构统一处理 # 用组合模式把“树”管明白:C++里怎么让文件夹和文件共用一个接口? 上周帮同事改一段老代码,他想遍历一个配置目录,统计所有 `.json` 文件的总大小,还要打印每层子目录的路径深度。结果发现——文件夹要递归,文... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.5 K 阅读
C++桥接模式分离抽象与实现 # 桥接模式:让C++里的“形状”和“画笔”不再互相绑架 写过图形渲染模块的同学大概都踩过这个坑:你刚给`Circle`类加上`drawOpenGL()`,产品经理说下个版本要支持Vulkan;你把`Rectangl... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 878 阅读
热文C++享元模式共享细粒度对象 # 享元模式:当C++程序里“重复造轮子”变成“共享螺丝钉” 写过图形编辑器或文字处理软件的人大概都踩过这个坑:画布上成百上千个字符、图标、小方块,每个对象都单独分配内存、各自维护状态——结果程序一开就吃掉几百MB,... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.45 K 阅读
C++备忘录模式保存恢复状态 # C++备忘录模式:别让对象“失忆”,手把手存档+回滚状态 写过游戏存档功能吗?改完配置又想一键退回上一步?或者调试时反复试错,却总得手动重置一堆变量?这些场景背后,其实都在呼唤一个轻量但关键的设计模式——**备忘... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 459 阅读
热文C++中介者模式降低耦合度 # 用中介者模式“拉群聊”,让C++对象不再私聊到崩溃 写过中大型C++项目的人都懂:当一个模块里 `WidgetA` 要通知 `ServiceB`,`ServiceB` 又得同步状态给 `LoggerC`,而 `L... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 1.97 K 阅读
C++解释器模式语言文法解析 # C++里写个“小语言”?解释器模式不是玩具,是文法解析的务实入口 上周帮同事调一个配置热加载模块,他用硬编码的 if-else 判断几十种表达式语法,改一次逻辑要编译三分钟。我顺手把那堆分支抽出来,用解释器模式重... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 508 阅读
C++访问者模式操作元素结构 # 访问者模式:让C++结构体“自己开口说它能干啥” 上周帮同事调一个图形渲染模块,他写了七八个形状类(Circle、Rect、Triangle……),每个都得支持序列化、碰撞检测、OpenGL绘制三套逻辑。结果改个... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 739 阅读
C++CRTP奇异递归模板模式 # CRTP:C++里那个“自己继承自己”的聪明 trick 你有没有写过这样的代码:想让基类能调用派生类的函数,又不想用虚函数——毕竟虚表开销、动态绑定、多态那套太重了?或者你试过 `static_cast(thi... Dark零点/ C++教程/ 2026-04-11/ 0 评论/ 762 阅读