【发布时间】:2018-07-31 12:02:42
【问题描述】:
我最近开始使用 Sublime,SFML 是从源代码构建的。我将我的 Core::Blocks 项目迁移到 Sublime(将源文件和头文件放在好的文件夹中,并创建了一个使用它们的 Sublime 项目)。一切都很好地编译并且运行良好,但有一些小问题。
不过,有一个问题; EasyClangComplete 无法识别 std。当我用#include <string> 写std::string 时,std 位于红色矩形中,并且警报显示“无法识别的标识符”。更奇怪的是,Sublime 本身的语法高亮并不能识别std,因为std:: 是白色的,而来自SFML 的sf:: 或ios:: 是绿色的。我错过了什么?
【问题讨论】:
-
我使用的是 Windows、Clang 6.0.0 和 gcc 6.3.0(mingw-w64)。我也没有设法让它识别
std::命名空间。由于我没有使用 CMake,因此我尝试了 3 种在文档中添加包含标志的推荐方法(用户设置中的"common_flags",项目文件夹根目录中的 .clang_complete 文件,崇高项目文件中的"common_flags") .尝试添加两个编译器的每个包含目录和子目录,但没有结果。它适用于从我自己的项目标题中解析/自动完成符号。浏览 repo 中的问题,似乎没有 Windows 支持。 -
@Running_Sloth:你在 Windows 上吗?您是否安装了 Microsoft 构建工具?在这种情况下,Clang 应该会自动找到标准头。
标签: c++ c++11 sublimetext3 std sfml