1
所以我想學習C++的命令模式,我不確定如何綁定我的命令。 我目前的代碼有我的輸入處理程序和命令,但我不知道如何綁定它們。我不斷收到 一個「錯誤:'命令'是一個'UpCommand'的無法訪問的基礎」。命令模式在C + +
InputHandler.h
#ifndef INPUTHANDLER_H_INCLUDED
#define INPUTHANDLER_H_INCLUDED
#include "Command.h"
class InputHandler
{
public:
void handleInput();
//Bind Buttons Here
private:
Command* buttonW;
Command* buttonA;
Command* buttonS;
Command* buttonD;
};
#endif // INPUTHANDLER_H_INCLUDED
這裏是我的Command.h
Command.h
#ifndef COMMAND_H_INCLUDED
#define COMMAND_H_INCLUDED
#include <iostream>
class Command
{
public:
virtual ~Command() {}
virtual void execute() = 0;
};
class UpCommand : Command
{
virtual void execute() {std::cout << "UP";}
};
class DownCommand : Command
{
virtual void execute() {std::cout << "DOWN";}
};
class LeftCommand : Command
{
virtual void execute() {std::cout << "LEFT";}
};
class RightCommand : Command
{
virtual void execute() {std::cout << "RIGHT";}
};
#endif // COMMAND_H_INCLUDED
我無法弄清楚如何綁定我的三分球InputHandler到子命令的方向。任何人都可以向我解釋它是如何完成的?