VS2019编写C++时函数和方法无语法高亮是什么原因?如何解决?
功能不生效的常见原因
- VS2019版本过低:C++增强着色功能是16.6版本首次引入的,低于该版本的VS2019默认不支持该特性
- 增强着色开关被手动关闭:默认配置下该功能开启,若之前修改过C/C++高级配置可能会误关对应开关
- 字体颜色配置被覆盖:手动修改过C++函数对应着色规则,将其固定设置为白色,导致切换主题时不会随主题自动适配
- IntelliSense语义缓存损坏:增强着色依赖IntelliSense的语义分析结果,缓存损坏后会无法识别函数、方法等语法节点
- 第三方扩展冲突:安装的第三方语法高亮、代码美化类扩展和原生增强着色功能冲突
解决方法
- 版本校验更新
打开VS顶部菜单栏的帮助-关于Microsoft Visual Studio,查看版本号是否≥16.6,若版本过低可运行Visual Studio Installer,将VS2019更新到最新正式版。 - 开启增强着色开关
打开顶部菜单栏工具-选项,依次展开文本编辑器-C/C++-高级,在右侧配置项中找到禁用增强颜色化,将其值设置为False,修改后重启VS生效。 - 重置C++函数着色规则
打开工具-选项,依次展开环境-字体和颜色,在「显示项」列表中找到C++ 函数,将其前景色修改为主题默认值,或自定义为和背景色区分度高的颜色即可。 - 清理IntelliSense缓存
关闭VS和当前打开的项目,进入项目根目录,删除隐藏的.vs文件夹,重新打开项目等待IntelliSense索引完成后即可恢复着色。 - 排查第三方扩展
如果以上操作都无效,可临时禁用近期安装的C++相关扩展,排查是否存在扩展冲突。
内容的提问来源于stack exchange,提问作者A. Dumais
相关产品推荐
相关产品推荐

