编译时的C ++语义错误

时间:2012-10-22 23:13:06

标签: c++ eclipse compiler-errors

我在使用C ++进行编程时遇到了麻烦,因为当我正在处理一个项目时,我会遇到一堆不应该存在的语义错误。

当我的一位同事开始一个项目并将其发送给我时,我的计算机出现错误,而她却没有。

之前发生过这件事。我开始为一个项目工作,它出现了类似的错误。然后,在我老师的电脑上,它消失了。

我最近格式化了我的电脑,现在正在使用Windows 8 64位。我使用Eclipse Juno C ++ 64位,但也在Indigo上尝试过它并没有用。我的编译器是MinGW 9.4。

我想一定有一些配置问题。可能与建筑物有关。

我想要一个没有停用我认为有用的错误的解决方案。

有人可以帮帮我吗? =)

修改:几乎所有出现的错误都是

  

方法X无法解决。

  

无效的参数

EDIT2:

  

可能你的同事正在使用Microsoft编译器,与例如gcc(可能是MinGW使用的编译器)相比,允许非法代码更加宽松。 - 马克B

我的同事和教授也在使用Eclipse和MinGW。

1 个答案:

答案 0 :(得分:4)

首先,它们不被称为语义错误。语义是指程序的含义,表示逻辑错误。我假设你在谈论编译器错误,这通常是指不正确的语法

其次,有许多原因可能会导致您在不同的计算机上出现不同的错误和警告。一些编译器和编译器版本的一致性比其他编译器更严格。有些人有虫子。您可能具有其他编译器无法识别的编译器特定扩展。您可能设置了不同的标志,这将影响您获得的错误的数量和类型。 (一个极端的例子是-wall -werror,但即使像在C ++ 03和C ++ 11中编译一样,也会产生许多不同之处。)

计算机与计算机之间存在错误的另一个主要原因是库放置。 C和C ++编译器/链接器非常精确,确保在正确的位置设置所有正确的头和库,并设置正确的路径。