【问题标题】:I'm getting an error, where I shouldnt get it [closed]我收到一个错误,我不应该得到它[关闭]
【发布时间】:2015-01-14 13:36:50
【问题描述】:

我收到一个错误,例如

1>src\CarDrivingAids.cpp(35): error C2220: warning treated as error - no 'object' file generated
1>src\CarDrivingAids.cpp(35): warning C4100: 'wheel' : unreferenced formal parameter

问题是,在另一个类中,我使用相同的方法编写方法,没有错误并且运行良好。

这是我的标题:

#include "CarWheel.h"
class CarDrivingAids
{
  public:
    CarDrivingAids(void);
    ~CarDrivingAids(void);
    void TractionControlSystem(CarWheel* wheel);
};

还有 cpp:

#include "CarDrivingAids.h"

CarDrivingAids::CarDrivingAids(void)
{
}

CarDrivingAids::~CarDrivingAids(void)
{
}

void CarDrivingAids::TractionControlSystem(CarWheel* wheel)
{
}

错误出现在 TractionControlSystem 方法上。关于我在这里可能做错的任何建议?从表面上看,它应该是正确的? 我正在使用 msvc++2010 express。

【问题讨论】:

标签: c++ compiler-errors


【解决方案1】:

问题是CarDrivingAids::TractionControlSystem 是使用参数wheel 调用的,但您(尚未)在函数中使用它。这只是一个警告,但您的编译器配置为将警告视为错误,因此不会生成任何代码。

您可以:完成函数的实现,或者开启“将警告视为错误”。

【讨论】:

  • 或者不在函数定义中命名参数,或者用(void)wheel;显式忽略它
  • 谢谢,上次接触c++已经半年了,有些东西被我遗忘了。我的英语也不完美,所以我并不总是遵循输出日志告诉我的内容,尤其是在错误方面。
【解决方案2】:

正如错误消息所说:警告被视为错误。 wheel 没有在CarDrivingAids::TractionControlSystem() 中使用,这通常是一个警告。但在你的情况下,这是一个错误。

如果您不希望将警告视为错误,可以在项目属性中关闭此行为。对于 VS 2013,您可以通过右键单击项目找到它,选择“属性”。然后是“配置属性/C/C++/常规/将警告视为错误”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-17
    • 2014-07-22
    • 1970-01-01
    • 2019-06-25
    • 2020-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多