名前空間宣言を.hファイルに入れるのは悪いフォームですか?C++ - プログラム内の複数のenum delcarations
//object.h
namespace Stuff {
enum Type {Player, Enemy, Gold, Potion}
}
...
他のファイルにobject.hが含まれていると、複数のファイルが定義されることがあります。それは問題だろうか?
名前空間宣言を.hファイルに入れるのは悪いフォームですか?C++ - プログラム内の複数のenum delcarations
//object.h
namespace Stuff {
enum Type {Player, Enemy, Gold, Potion}
}
...
他のファイルにobject.hが含まれていると、複数のファイルが定義されることがあります。それは問題だろうか?
これは、ヘッダーガードを含める理由です(プラグマは/ if if if)。 enum クラスタイプを使用することもできます。名前空間の代わりにスコープ解決のEnumClassNameクラスを列挙します。
.hファイルにHEADER GUARDが含まれていないようです。 それは次のようになります -
#ifndef _HEADER_GUARD_
#define _HEADER_GUARD_
//Your .h file content
#endif
をこれは、ファイル内の同じヘッダファイルの複数のインクルードを防ぐことができます。 人は通常、HEADER_GUARDマクロとして.hファイルの名前を使用します。
同様に、abhi.hという名前のファイルの場合、私は_ABHI_H_を使用することを好みます。