PCH Warning: header stop not at file scope

引入自定义头文件时产生警告:PCH Warning: header stop not at file scope

使用编辑器为 VSCode,使用编译器为 g++11,代码检查器(也就是报错的)为 IntelliSense。

具体原因为:在代码中使用了 c++17 的语法,与 IntelliSense 的配置不符,IntelliSense 在预编译时无法识别头文件语法。

根据报错信息,找到 IntelliSense 的相关配置,由于电脑上有多个 c++ 编译器,但是在使用 IntelliSense 没有做出相应的配置。如同可以看到使用的编译器是 clang,而不是实际上使用的 g++11

clang

修改编译器配置,同时加上参数 -std=c++17 使 IntelliSense 的预编译正常工作,说明使用 c++17 的语法。

g++

或者不添加参数 -std=c++17,在下面还有一个配置可以修改使用的 c++ 标准,改为 c++17 也可以正常工作。

c++17

posted @ 2022-12-03 16:52  Violeshnv  阅读(121)  评论(0编辑  收藏  举报