>>118
たしかにその方法でできるのですが、
そうなるとmain.hのほうで宣言していた
#include "a.h"
#include "b.h"
のところで

コンパイラ エラー C2011'identifier' : 'type' 型の再定義
識別子が既に type として定義されています。このエラーは、タイプ ライブラリを同じファイルに 2 回以上インポートした場合にも発生します。

のエラーがでてしまいます。これはb.hだけインクルードすればよいのですか?