【问题标题】:Eclipse C++ Linux "to_string was not declared in this scope"Eclipse C++ Linux“to_string 未在此范围内声明”
【发布时间】:2014-02-04 20:16:27
【问题描述】:
#include "Person.h"
#include <string>

using namespace std;

string Person::toSimpleString(){

     return getFirstName() + " " + getLastName() + ", Age " + to_string(5);
}

我所有的字符串都工作正常,但我根本无法让 to_string 函数工作。 Eclipse 一直告诉我它超出了范围。什么

【问题讨论】:

  • Eclipse 是给你一个 codan 警告,还是你得到一个编译错误?
  • 您需要使用 C++11 支持进行编译,才能使用 std::to_string
  • 您的编译选项中是否启用了 C++11?
  • 如何启用 c++11?
  • 你用的是什么编译器?

标签: c++ scope eclipse-cdt


【解决方案1】:

#include &lt;string&gt; 必须是#include &lt;string.h&gt; 吗?

我认为您可能缺少“.h”

【讨论】:

  • 不,string and string.h 不同。
  • 注意细微差别,在 C++ 中 #include &lt;string&gt; 包含标准库中的字符串类,而 不是 标准 C 字符串操作函数(可以包含在C++ 中的&lt;cstring&gt;,或两种语言中的&lt;string.h&gt;
  • 啊哇,我不知道有什么不同。感谢您的更正。
猜你喜欢
  • 1970-01-01
  • 2016-06-16
  • 2018-09-26
  • 1970-01-01
  • 2010-12-17
  • 1970-01-01
  • 2021-07-17
  • 2015-08-21
  • 2015-08-20
相关资源
最近更新 更多