【发布时间】:2014-08-14 01:17:55
【问题描述】:
我的程序如何编译成功,但 Eclipse 显示“语义错误”,我该如何摆脱这些错误?
我收到的错误消息如下
Method 'c_str' could not be resolved(这也适用于字符串的比较和大小)
这里是一个例子:
std::string someotherstring = "test";
std::string name = someotherstring.c_str();
这里的问题是,它还会产生似乎都不正确的后续错误,我的软件按预期编译和运行,甚至使用“c_str()”返回来处理消息。这似乎只是 Eclipse 中的显示问题。
我已经搜索了几个小时,尝试使用自定义索引器,但由于某种原因它不会消失。也许其他人有一个好主意在这里做什么,因为谷歌对这个特定问题一无所知。 (我什至尝试使用不同的 C++11 标准标志,因为我认为它可能会产生影响)
【问题讨论】:
-
这听起来像是 eclipse 问题而不是 C++ 问题?
-
@djechlin:如果您建议 C++ 标签不相关(不确定是否相关),我不同意。在使用 C++ 时,这是 eclipse 的问题。使用 Java 和 eclipse 的人可能不会遇到同样的问题。
-
@BenjaminLindley C++ 标签是相关的;但应该更清楚的是,这是一个 Eclipse 问题。我必须阅读这个问题几次才能确定;在到达问题主体之前,这一点应该很清楚。所以我编辑了标题。
-
您是否加入了
std::string?编译器是否设置为使用 C++(g++ 不是 gcc)? -
我已经包含了
这应该绰绰有余吧?如果我错了纠正我。如果您需要更多信息,请告诉我,因为我已经尽我所能尝试了一切。