2016-08-09 3 views
-3

他のクラスで列挙型を再利用する方法はありますか?他のクラスで列挙型を再利用する方法はありますか?

たとえば、 私は別のクラスの列挙型を使用するクラスを持っています。しかし、クラスの列挙型をアクティブなクラスに使用するたびに、他のクラスの名前空間を入力する必要はありません。

+0

なぜあなたと同じように名前空間と、あなたはそれを行う必要はありません。他のクラスに名前を付けていない... – MethodMan

+3

あなたがする必要がありますより具体的な詳細を提供する。現在の答えは「それは依存している」です。 –

+2

1. enumを共通の名前空間に入れ、各クラスの先頭に 'using'ステートメントを使います。 2.両方のクラスを同じ名前空間に入れます。 – ChrisF

答えて

0

using文を使用できない理由はありますか?

using Namespace.With.Enum; 

namespace Namespace.Without.Enum 
{ 
    public class Foobar 
    { 
     ... 
    } 
} 

これは、あなたがそれを前置きすることなく、Foobar内の列挙型を使用できるようにする必要があります。

0

各ファイルの先頭にusingステートメントを置いても問題はありません。

namespace MyNameSpace.EnumNamespace 
{ 
    public enum MyEnum 
    { 
     One,Two,Three 
    } 
} 

そして、別のファイルに

using MyNamespace.EnumNamespace; 


namespace AnotherNamespace 
{ 
     public class AnotherClass 
     { 
      //somewhere in the same file 
      public void SomeMethod(MyEnum enumValue) 
      { 
       //Do stuff 
      } 
     } 
} 

また、あなたも同様にエイリアスを割り当てることができます。

using MyEnumAlias = MyNameSpace.EnumNamespace.MyEnum 
0

名前空間とクラス名を入れたくない場合(例:

namespace AnotherNamespace { 
    ... 
    public class AnotherClass { 
     ... 
     public enum MyEnum { 
     One, 
     Two, 
     Three 
    } 
    } 
    ... 
    } 

    ... 

    namespace MyNamespace { 
    ... 
    AnotherNamespace.AnotherClass.MyEnum v = ... 

あなたはusing経由同義語を作成してみてくださいすることができます

namespace MyNamespace { 
    using MyEnum = AnotherNamespace.AnotherClass.MyEnum; 

    ... 

    MyEnum v = ... 
関連する問題