【问题标题】:std::to_string - 'to_string' is not a member of 'std' - Visual Studio Code 1.42.0std::to_string - 'to_string' 不是 'std' 的成员 - Visual Studio Code 1.42.0
【发布时间】:2020-05-23 05:13:16
【问题描述】:

我无法编译我的代码。我想使用 std::to_string 因为它是一种方便的将 int 转换为字符串的衬里。但是,我不断收到“'to_string' 不是 'std' 的成员”,所以这似乎是编译器问题,因为这应该是以后 C++ 版本中的标准功能。

第一次编译失败时,我做了一些研究,并根据我的发现尝试了以下方法:

包括以下标题:

#include <iostream>
#include <string>
#include <sstream>

尝试在 C++ 11、17 和 20 中编译

在 msvc-x64 和 gcc-x64 之间更改智能感知模式

在“默认”和“标签解析器”之间更改智能感知引擎

这些似乎都不能解决问题。我不知道还能尝试什么。任何见解将不胜感激。

【问题讨论】:

  • 你是如何使用std::to_string()的?
  • 请尝试创建minimal reproducible example 向我们展示。此外,请将 full 和 complete 构建输出复制粘贴到问题正文中,并在出现错误的行上添加 cmets。另外请花一些时间阅读how to ask good questions和this question checklist。
  • 有一个类似的问题,有一些解决方法,也许还有一些可能的解决方案。 stackoverflow.com/questions/12975341/…
  • 类似问题here。但是,它与 GCC 相关,而不是 MSVC,但它可以帮助您
  • VS Code 不适用于原生 Windows C++ 的东西,即使你记得像你应该做的那样从 VS Dev Powershell 启动它。我建议使用远程扩展在 WSL 或容器中编写代码,或者如果您需要在 Windows 世界中使用,则只需使用完整的 VS 社区。​​span>

标签: c++ visual-studio-code intellisense tostring


【解决方案1】:

将 C++ 标准版本更改为 C++11(最小,默认为 C++98)。您也可以查看编译器路径:默认为 clang。

您可以通过运行命令 C/C++:从命令面板编辑配置 (UI) (Ctrl+Shift+P) 在 C/C++ 配置 UI 中更改它。

【讨论】:

  • "默认为 C++98" 取决于编译器版本。
猜你喜欢
  • 2013-10-07
  • 2014-11-23
  • 2014-04-06
  • 2012-10-10
相关资源
最近更新 更多