C++ Pro 现代编程
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/cpp-pro-zh。
技能介绍
要解决什么问题
C++ 项目里常见痛点是:手动 new/delete 与资源泄漏、移动语义用错导致多余拷贝、模板接口缺少约束而拖到运行期才暴雷,以及并发与异常安全混在一起难以审查。本技能把对话目标收敛到现代 C++(C++11~23)与高性能软件工程,而不是泛泛语法答疑。
技能如何工作
使用前需明确目标、约束和输入;执行时按 C++ 核心指南与下列原则落地,并给出可验证步骤:
- 资源与生命周期:优先栈分配与 RAII;堆上资源用
unique_ptr/shared_ptr,遵循零/三/五法则 - 接口与编译期检查:在适用处使用
const正确性、constexpr、概念(concepts)与模板元编程;倾向编译期错误而非运行期才发现的问题 - 性能与标准库:移动语义与完美转发;用 STL 算法与容器替代手写循环;需要时用 perf、VTune 等做分析
- 工程化输出:现代 C++ 源码、带正确标准的
CMakeLists.txt、头文件守卫或#pragma once;单测(Google Test / Catch2)、AddressSanitizer / ThreadSanitizer 清理建议,以及 Google Benchmark 基准;模板接口附清晰文档
更细的示例与检查清单见 resources/implementation-playbook.md。
适用边界
任务与 C++ Pro 无关、或需要本范围外其他领域/工具时,不必启用本技能。它不负责替代你方项目的编码规范与 CI 策略,而是在给定约束下给出可执行步骤与验证方法。
使用场景
- 把仍用裸指针与手动析构的老模块,改成 `unique_ptr`/RAII,并核对零/三/五法则是否满足
- 为新库设计带 concepts 的模板接口,避免错误类型拖到链接或运行期才暴露
- 在 `std::thread` 与原子操作并存的代码路径上,梳理异常安全等级并补 ThreadSanitizer 验证步骤
- 为新组件补齐 CMake 标准版本、Google Test/Catch2 单测与 Google Benchmark 基准,并对照 C++ 核心指南改一版
适合人员
- 维护高性能中间件、需要在热路径上落实移动语义并减少多余拷贝的后端工程师
- 负责对外发布头文件库、必须为模板参数写清约束与文档的 C++ 库维护者
- 接手含多线程与共享状态的遗留服务、要系统性排查数据竞争与资源泄漏的工程师
- 在交付前需要用 perf/VTune 定位瓶颈、并把循环改成 STL 算法的性能优化负责人