play() 関数を使用して新しいクラスを設定しようとしています。同様の方法で実装した他のクラスがあり、それらは正常に動作するため、何が間違っているのかわかりません。私がどこで間違いを犯したのか、誰か指摘してもらえますか?
.h ファイル
#ifndef GAME_H
#define GAME_H
#include <string>
using namespace std;
class Game {
public:
Game();
void play();
};
#endif
.cpp ファイル
#include "game.h"
#include <string>
#include <iostream>
using namespace std;
Game::Game() {}
Game::play() {}
次のように再生関数を呼び出します。
Game* theGame = new Game();
theGame->play();
コンパイル時に次のエラーが発生します。
game.cpp:10: error: ISO C++ forbids declaration of ‘play’ with no type
game.cpp:10: error: prototype for ‘int Game::play()’ does not match any in class ‘Game’
game.h:16: error: candidate is: void Game::play()
game.cpp:10: error: ‘int Game::play()’ cannot be overloaded
game.h:16: error: with ‘void Game::play()’