首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Eclipse:无法解析“to_string”函数

Eclipse:无法解析“to_string”函数
EN

Stack Overflow用户
提问于 2013-01-17 14:23:19
回答 1查看 22.8K关注 0票数 14

可能重复: 关闭eclipse错误(不是真正的错误)

我面临着这个恼人的问题: Eclipse拒绝承认std::to_string函数,但是我的程序编译时没有错误。我遗漏了什么?

根据优先选择std::to_string函数是在<string>中定义的,所以我将它显式地包含在被定罪的.cpp文件中。我还尝试了解决方案,但没有成功。

还有其他建议吗?

编辑:

我在Linux下使用g++ 4.7.2。

EN

回答 1

Stack Overflow用户

发布于 2013-01-17 15:59:45

在我的例子中,eclipse相信__cplusplus是定义为199711L的,但是我非常肯定这应该被定义为类似于201103L的东西,因为libstdc++ v3使用

代码语言:javascript
复制
#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else

在大多数新的C++11头中,比如<future>basic_string.h ( std::to_string的定义是这样的),这是由<string>包含的。尽管在用g++ (Built by MinGW-builds project) 4.8.0 20121225 (experimental)编译时,我绝对没有错误。这种奇怪的行为显然混淆了eclipse,使其无法正确地表述包含的文件。

在包含__cplusplus文件之前,在201103L上将C++11定义为C++11应该会修复假eclipse语法错误,比如Symbol 'shared_ptr' could not be resolved

代码语言:javascript
复制
#undef __cplusplus
#define __cplusplus 201900L

在重新定义之后,您将希望右键单击项目Index -> Rebuild & Freshen all files,或者更好地一起重新启动eclipse。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14381137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档