2016-08-09 2 views
-3

다른 클래스에서 열거 형을 다시 사용할 수 있습니까?다른 클래스에서 열거 형을 다시 사용할 수 있습니까?

예 : 다른 클래스의 enum을 사용하는 클래스가 있습니다. 그러나, 나는 다른 클래스의 네임 스페이스를 입력 할 때마다 클래스의 열거 형을 활성 클래스에 사용할 필요가 없다.

+0

이유는 다른 클래스가 당신과 동일 네임 스페이스의 이름없는 다음 당신은 그렇게 할 필요가 없습니다 .. – MethodMan

+3

을 당신이 필요합니다 :

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

당신은 using를 통해 동의어을 만드는 시도 할 수 있습니다 보다 구체적인 세부 사항을 제공하십시오. 현재의 대답은 "의존합니다"입니다. –

+2

1. 열거 형을 공통 네임 스페이스에 넣고 각 클래스의 맨 위에'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 MyNamespace { 
    using MyEnum = AnotherNamespace.AnotherClass.MyEnum; 

    ... 

    MyEnum v = ... 
관련 문제