C#.NETとC++.NETの相互運用に関する質問です。 C#にて、以下のようなクラスを作成し、 namespace Test { public class Hoge { public enum Hoge2 {aaa, bbb, ccc}; public Hoge(Hoge2 h) … }; public enum Hoge3 {qqq, rrr, sss}; } C++から、Hoge2の要素にアクセスしたいのですがうまくいきません。 using namespace Test; int _tmain(void) { Hoge h = new Hoge(Hoge::Hoge2::aaa); } のようにすると、「列挙型が宣言内で再定義されています」という コンパイルエラーが発生してしまいます。 ちなみにHoge3::qqqのようにクラス外の列挙型の要素にアクセスできます。 どのようにすれば、Hoge2の要素にアクセスできますか?