"overloaded function differs only by return type"错误

"overloaded function differs only by return type" error

本文关键字:return type 错误 by only overloaded function differs      更新时间:2023-10-16

我正在尝试挂起基类和纯虚拟函数。

以下是类和标题:

IUpdate.h

class IUpdatable
{
public:
    virtual void Update(void) = 0;
};

InputHandler.h

#include "IUpdatable.h"
class InputHandler :
public IUpdatable
{
public:
   InputHandler();
   ~InputHandler();
   virtual void Update(void);
 };

InputHandler.cpp

#include "stdafx.h"
#include "InputHandler.h"

InputHandler::InputHandler()
{
}

InputHandler::~InputHandler()
{
}
InputHandler::Update()
{
}

编译器在InputHandler::Update(){} 上给我这个错误

错误C2556:"int InputHandler::Update(void)":重载函数与"void InputHandler::Update(void)"的不同之处仅在于返回类型

就我所见,纯虚拟函数被声明为不带参数的void,重载函数再次以相同的方式声明。

在C++文件(定义)中,您需要定义返回类型:

void InputHandler::Update()
^^^^
{
}
相关文章: