大型 C/C++ 项目中 AI 助手(Cursor / Claude Code)日常操作清单与发散思路
大型 C/C++ 项目中 AI 助手(Cursor / Claude Code)日常操作清单与发散思路
🛠 一、AI 在大项目中的定位
先定调:
- 不是工人 → 不能替你写复杂逻辑。
- 是外脑 → 主要帮你“解释、导航、生成样板、维持上下文”。
- 节省精力 → 把你从重复、低价值的脑力劳动里解放出来。
📋 二、日常操作清单(像 checklist 一样可执行)
1. 代码理解
- Cursor 用法:
@src/module/foo.cpp
→ 让它解释函数职责,给出调用关系图。 - Claude Code 用法:
用ccr chat
附带文件上下文,要求它总结“入口点 + 关键数据流”。
👉 每日任务:
遇到陌生模块,先让 AI 给你一份“导览手册”,再自己读代码,效率翻倍。
2. 依赖关系探索
-
用 AI 替代
grep
,但别完全依赖。 -
提问方式:
这个
UserRepo::saveTenant
方法被哪些模块依赖?传入数据路径是什么? -
结合
ripgrep
的结果,要求 AI 帮你做二次整理。
👉 好处:
减少脑图绘制和跳转时间,你不用在脑子里画调用链,让 AI 给出图表或清单。
3. 样板生成
- 单元测试 stub:
让 AI 生成 GoogleTest/Catch2 的测试壳子,你只填逻辑。 - 接口对接:
比如 protobuf → C++ adapter,先让 AI 出初稿,你再改。 - 配置文件模板:
YAML/JSON schema 让它代劳。
👉 注意:
这类代码低风险,但写起来很烦,AI 在这里特别省事。
4. 文档 / 解释
-
让 AI 生成:
- 函数注释
- API 使用示例
- 变更说明(写 commit message)
-
特别是 历史遗留模块,AI 的解释比“口口相传”更快。
👉 好处:
减少写说明文档的抵触感,你只需要 review 它的结果。
5. 渐进式上下文管理
-
做一个
.ai/context/
文件夹,手动积累:- 模块说明
- 特殊依赖
- 编译链限制
-
让 AI 反复读取这些文件,而不是每次你自己讲一遍。
👉 实际好处:
把 AI “当学徒”养起来,避免反复解释,慢慢积累成“项目知识库”。
6. 协助调试 / 排查
- 把错误日志(尤其是 CMake、GCC/Clang 报错)丢给 AI,让它帮你定位原因。
- 它不能直接跑调试,但能节省你查 StackOverflow 的时间。
👉 特别适合:平台相关错误(Linux Docker 环境),AI 能帮你快速缩小范围。
7. Claude Code Hooks(轻量自动化)
适合:
- 格式化(可选)
- 静态检查(lint,cppcheck)
- commit 前生成文档/测试
⚠️ 不适合:
- C/C++ 编译(环境依赖太复杂,放到 CI/CD 更合适)。
💡 三、发散思路:如何在大项目中真正提效
-
任务拆分不是碎片化,而是“逐层展开”
- 先告诉 AI “我要加租户逻辑”。
- 让它反问你:需要改数据库?需要改 API?
- 你逐层提供答案,相当于让 AI 帮你做“需求澄清”,而不是你一次性描述。
-
用 AI 做“语义 grep”
-
你可以问:
哪些地方有“多租户”的逻辑影子?(虽然代码没写 tenant,但概念上相关)
-
这是 grep 做不到的,AI 有语义理解优势。
-
-
和 Git 集成
- 利用
git diff
→ 只把修改过的文件丢给 AI,让它 review 或生成说明。 - 避免“大爆炸上下文”,只看增量,减少沟通成本。
- 利用
-
不同语言策略
- C/C++:解释/总结为主,写逻辑为辅(因为平台依赖重)。
- Java/Python:写逻辑也能用(背景依赖小,生态成熟)。
- 跨语言 glue code:AI 特别擅长写接口层,因为多是样板。
-
逐渐演化的知识库
- 你可以建立一个
project.ai.md
,记录 AI 对项目的解释。 - 长期迭代后,它能变成项目“速查宝典”。
- 你可以建立一个
🚀 四、价值总结
-
省时点:理解代码 / 生成样板 / 写文档 / 错误排查。
-
慎用点:核心逻辑编写 / 批量改动 / 自动格式化。
-
关键思路:
- 把 AI 当成“外脑”,而不是“工人”。
- 不要追求一次性完美输入,而是渐进式对话。
- 用 Git + 增量输入,减少描述成本。
✅ 一句话:
在大型 C/C++ 项目中,AI 的提效秘诀不是“替你写代码”,而是“减少你在理解、样板、查找、解释上的脑力开销”,把有限的脑力留给真正的业务逻辑。