0

私は、作業中のプロジェクト (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_

ヘッダーファイルを一緒に「リンク」する方法がわかりません。それが正しい方法だと思いますか?

4

1 に答える 1