升级Eclipse C++ 2022-06后CTRL+Space无默认代码提示求助
检查补全触发策略和优先级
打开Window > Preferences > C/C++ > Editor > Content Assist > Advanced,确认Default Proposals已勾选,并且排在候选列表最前面。另外在Content Assist主面板里,查看Auto activation triggers for C/C++是否包含.、->、::这些常用触发字符,要是之前改过,先恢复默认值试试。手动清理CDT缓存与索引文件
删掉项目目录下的.metadata/.plugins/org.eclipse.cdt.core文件夹,还有项目根目录的.cproject文件(记得先备份),然后重启Eclipse,重新导入项目再触发索引。有时候索引文件损坏会让补全逻辑出问题,但不影响跳转功能。核对项目语言标准配置
右键项目选Properties > C/C++ General > Preprocessor Include Paths, Macros etc. > Providers,确保CDT GCC Built-in Compiler Settings这类编译器配置正确,语言标准(比如C++17/20)和项目实际用的一致。另外在C/C++ Build > Settings里,确认编译器的语言标准参数(像-std=c++20)已经设置好,标准不对可能导致补全引擎解析语法失败。禁用可能冲突的第三方插件
部分第三方插件(比如代码检查、主题插件)可能和CDT的内容助手冲突。去Help > About Eclipse IDE > Installation Details里卸载近期装的插件,或者启动Eclipse时加-clean参数(在快捷方式目标后面加-clean),清理插件缓存后再测试补全。切换CDT补全引擎
打开Window > Preferences > C/C++ > Editor > Content Assist,试试切换Completion engine选项(比如从默认换成基于索引的,或者反过来),不同引擎的符号处理逻辑不一样,说不定能解决补全失效的问题。查看工作区错误日志
打开Window > Show View > Other > General > Error Log,看看有没有CDT相关的异常日志(比如索引时的报错、内容助手崩溃信息),这些日志能定位具体问题,比如某个头文件解析失败导致补全中断。
内容的提问来源于stack exchange,提问作者Peter VARGA

