私は使用している複数のエンジニアから複数のクラスを取得していますが、それらはクラス内で同じ名前の構造を持っています。これから私はエラー "'struct'型の再定義を得ます。これをどうやって回避するのですか?複数のクラスで同じ名前の構造体を定義するにはどうすればよいですか?
例:
// Eng1Class.h
#pragma once
struct Eng1And2SameName
{
unsigned int bottle;
};
class Eng1Class
{
public:
Eng1Class();
~Eng1Class();
};
。
// Eng2Class.h
#pragma once
struct Eng1And2SameName
{
float x, y;
};
class Eng2Class
{
public:
Eng2Class();
~Eng2Class();
};
。
// Main Program
#include "stdafx.h"
#include "Eng1Class.h"
#include "Eng2Class.h"
int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}
エラー:エラーC2011:「Eng1And2SameName」:「構造体」タイプの再定義
このCompile error "'struct' type redefinition" although it's the first definition for itによるとの#pragmaは一度問題を修正する必要がありますが、私はまだエラーを参照してください。あなたが提供できる洞察はありますか?
これらの 'struct'のポイントは何ですか?それらがクラスのためだけのものであれば、それらをクラスの中に宣言することができます。 – NathanOliver
名前空間を定義すると便利です –