私は、作業中のプロジェクト (1 つの cpp ファイルに含まれている) を取得し、それを複数のモジュール/cpp ファイルに分割する課題に取り組んでいます。ヘッダー ファイルを扱うのはこれが初めてで、どうすればよいか少しわかりません。構造体や変数などを宣言するためにヘッダー ファイルが使用されることは知っていますが、他にはあまりありません。頻繁に発生するエラーは、「...このスコープで宣言されていませんでした。私のコードの例です。
「cookie.h」には、次のコードがあります。
#ifndef _cookie_H_INCLUDED_
#define _cookie_H_INCLUDED_
struct Cookie {
int initialNumberOfRows;
/// Number of rows currently remaining in the cookie
int numberOfRows;
/// Number of columns currently remaining in the cookie
int numberOfColumns;
/**
* The "shape" of the cookie.
*
* If crumbs[i] == j, then the cookie currently
* has crumbs filling the j columns at row i
*/
int* crumbs;
};
ただし、プログラムを実行しようとすると、「cookie はこのスコープで宣言されていません」というエラーが表示されます。具体的には、別のヘッダー ファイル 'computerPlayer.h' から発生しています。そのセクションのコードは次のようになります。
#ifndef _computerPlayer_H_INCLUDED_
#define _computerPlayer_H_INCLUDED_
bool isADangerousMove (Cookie& cookie, int column, int row);
#endif // _game_player_INCLUDED_
ヘッダーファイルを一緒に「リンク」する方法がわかりません。それが正しい方法だと思いますか?