2010-06-29 5 views
3

난 내가 바깥 클래스 액세스해야하는 내부 클래스의 경우C에서 내부 클래스에서 외부 클래스 변수에 액세스하는 방법

.. 두 클래스 변수 공통 선언 개의 클래스가 필요했다 내부 클래스의 변수

C#에서 이렇게하는 더 좋은 방법을 알려주십시오. 미리

샘플 코드

Class A 
    { 
    int a; 
    Class B 
     { 
       // Need to access " a" here 
     } 
    } 

덕분

+0

짧은 코드 샘플을 게시하면 어떤 작업을하고 있는지 더 잘 알 수 있습니까? – Paddy

답변

9

먼저 제안은, 건설 내부 클래스에 다음 외부 클래스 속성을 참조하므로 내부 클래스 아우터 클래스에 대한 참조를 전달한다.

+2

정말 자명하다. 먼저 시도해보십시오. –

0

예를 들어, 생성자에서 B에 매개 변수로를 전달해야합니다. 그렇지 않으면 액세스 할 수 없습니다. 이것을 '어린이'수업으로 만드는 것은 훌륭한 디자인이 아닐지 모르지만 실제로 어느 쪽인지 아는 데 필요한 정보가 충분하지 않습니다.

4
public Class Class_A 
{ 
    int a; 

    public Class Class_B 
    { 
     Class_A instance; 

     public Class_B(Class_A a_instance) 
     { 
      instance = a_instance; 
     } 

     void SomeMethod() 
     { 
      int someNumber = this.instance.a; 
     } 
    } 
} 
+0

인스턴스를 만들지 않고? –

+0

어떻게 Class_B를 호출하고 Class_A에서 전달하겠습니까? – Euridice01

관련 문제