【问题标题】:Clion can't resolve c++11 std typesClion 无法解析 c++11 标准类型
【发布时间】:2017-11-13 22:44:16
【问题描述】:

正如这些图片所示,我在 ubuntu 上的 Clion 无法解析 std 标识符,例如 std::shared_ptr。我们可以从中确认一个事实,因为 clion 可以找到 include 文件。这个项目其实可以编译,证明我的CMakeLists.txt没问题。

所以我的问题是,如何修复 clion smart-completor 的这个 bug?我应该在哪里修改哪些设置?

  • clion 无法解析 std
  • clion 尝试从 libstdc++ bits/shared_ptr.h 解决它

-------------第二次编辑---------------

删除CMakeLists.txt中的CMAKE_CXX_DEBUG_FLAGS后,这个未解决的问题就解决了。我认为这可能是由 CMAKE_CXX_DEBUG_FLAGS 和 CMAKE_CXX_FLAGS 中的重复标志引起的。 谢谢大家。

【问题讨论】:

  • 信息缺失:您使用的是哪个编译器?你在 CMakeList.txt 中激活了 C++11 了吗?
  • @arved 感谢您的回复。第一个问题:我没有在设置中设置编译器目录。第二个问题:是的,在 CMakeLists.txt 中,我设置了(CMAKE_CXX_FLAGS "--std=c++14 -fpermissive -Wall -Wextra -lpthread")。顺便问一下,这件事发生在你身上吗?
  • 我在任何地方都看到了没有using std::shared_ptrusing namespace stdshared_ptr(这在头文件中很好)。也许您需要添加它,只是为了检查?
  • @Jepessen 感谢您的建议。在别处有一个“使用 std::shared_ptr”而不是这张图片。

标签: c++11 clion


【解决方案1】:

我没有CMAKE_CXX_DEBUG_FLAGS 标志,我尝试了File>Invalidate Caches / Restart,它成功了!

听起来像 CLion 的错误

【讨论】:

    猜你喜欢
    • 2020-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多