实时代码补全与预测 —— 敲到一半帮你补完
为什么需要实时代码补全
在手机软键盘上输入代码比在物理键盘上慢得多——特别是 C++ 的 std::、模板参数 <T>、嵌套命名空间这些东西,每次手打都浪费时间。
Cxxdroid 的实时代码补全能帮你:
- 减少打字量:敲
std::st就能弹出std::string、std::stack等候选项 - 避免拼写错误:函数名、类名、成员名的拼写错误直接在补全时纠正
- 学习 API:不知道某个库有什么函数?敲类名后
.就能看到所有成员
补全能识别什么
基于 Clang 的语义分析,Cxxdroid 能补全:
- 头文件内容:
#include <后弹出可用的标准库头文件 - 标准库符号:
std::后弹出完整的标准库成员 - 第三方库符号:
using namespace boost;后 Boost 库的类型和函数 - 项目内自定义符号:你自己写的类、函数、结构体
- 代码片段(Snippets):比如输入
fori展开成for (int i = 0; i < N; ++i)循环模板
什么时候触发补全
Cxxdroid 默认在以下情况自动弹补全框:
- 输入
::(命名空间作用域) - 输入
.或->(成员访问) - 输入
<(模板参数) - 输入
((函数参数) - 输入
#include <后
也可以手动触发(菜单或快捷键),在任意位置弹出可用补全。

补全不出来怎么办
有时候你明明写对了但补全不弹,常见原因:
头文件没包含:补全只知道已经 #include 进来的符号。补全 Boost 的符号之前,必须先 #include <boost/...>。
编译器报错阻断:如果文件里有语法错误,Clang 无法做完整的语义分析,补全可能退化成纯文本匹配。先修掉红色波浪线再试。
项目没构建过:CMake 项目可能需要先跑一次构建,Cxxdroid 才能拿到完整的符号表。
与桌面 IDE 的补全对比
Cxxdroid 的补全是 Clang 原生的,精度不输给 CLion 或 VS Code + clangd。但因为手机屏幕小,补全弹出框一次只能显示 4 到 5 个候选,需要滚动查看更多。