3

構造体を別のファイルに入れるにはどうすればよいですか? 関数プロトタイプを file.h などのヘッダー ファイルに配置し、関数本体を file.cpp などのファイルに配置し、main を使用してソース ファイルでインクルード ディレクティブ #include "file.h" を使用することにより、関数でそれを行うことができます。以下のような構造で同じことを行う簡単な例を誰か教えてください。私はdev-c++を使用しています。

struct person{
  string name;
  double age;
  bool sex;
};
4

2 に答える 2

8

宣言するだけ

struct person;

クラス前方宣言といいます。C++ では、構造体はデフォルトですべてのメンバーがパブリックなクラスです。

于 2009-07-27T00:01:11.483 に答える
4

構造体宣言について話している場合:

person.h :

#ifndef PERSON_H_
#define PERSON_H_
struct person{ 
  string name; 
  double age; 
  bool sex; 
};
#endif

次に、その構造体が必要な .cpp ファイルに person.h を含めるだけです。

構造体の (グローバル) 変数について話している場合:

person.h :

#ifndef PERSON_H_
#define PERSON_H_
struct person{ 
  string name; 
  double age; 
  bool sex; 
};
extern struct Person some_person;
#endif

そして、 .cpp ファイルの1 つで、「some_person」の定義を保持するグローバル スコープでこの行が必要です。

struct Person some_person;

これで、グローバル 'some_person' 変数にアクセスする必要があるすべての .cpp ファイルに person.h ファイルを含めることができます。

于 2009-07-27T00:10:58.153 に答える