2011-12-20 7 views
-2

나는 C#에서 응용 프로그램을 만들고 있습니다. 그 응용 프로그램에서 나는 하나의 클래스가 DataCapture.cs입니다. 같은 응용 프로그램에서 나는 또 다른 클래스 Listner.cs 있습니다. 여기 Listner.cs 클래스에서 DataCapture.cs의 새로운 객체를 만들지 않고 DataCapture.cs의 객체를 사용하고 싶습니다. 마치 DataCapture.cs의 새로운 객체를 생성하는 것처럼, DataCapture.cs 데이터에 액세스 할 수 없으므로 클래스의 새 인스턴스가 생성되고 모든 데이터가 손실 됨으로서 나는 DataCapture.cs에 컬렉션을 사용합니다. 제발 도와주세요. 미리 감사드립니다.다른 클래스에서 하나의 클래스 객체를 사용합니까?

+1

일부 코드를 알려주십시오. –

+0

Downvoter가 질문에 대한 잘못된 점을 말해 줄 수 있습니까? – Dany

+0

나는 downvote하지 않았다. 그러나 나는 당신의 질문이 분명하지 않기 때문에 왜 사람들이 그것을하는지 볼 수있다. 코드가 많이 명확 해 졌을 것입니다. –

답변

1

singleton pattern을 사용하면 classone object 만 존재하도록 할 수 있습니다. 그런 다음 object

DataCapture.Instance. ......로 가져올 수 있습니다. 여기에서 .Instance는 public static입니다.

1

이미 생성 된 DataCapture 객체의 참조를 Listener 클래스에 전달할 수 있습니다. 예를 들어 인스턴스를 Listener의 생성자에 전달합니다.

class Listener{ 
    Listener(DataCapture data) 
    { 
    this.data = data; 
    } 
} 

이제 Listener에서 DataCapture 인스턴스에 액세스 할 수 있습니다.

1

내가 당신이 요구하는 것을 이해한다면, 당신은 이와 같이 somethign을 할 수 있습니다. 이없는 당신이 요구하는지 경우 리스너 요구 실제로 DataCapture

public class Listener { 

    DataCapture _dataCapture = null; 

    public Listener(DataCapture dc) { 
    _dataCapture = dc; 
    } 

    /* Use _dataCapture member inside listener class member functions. 
    One instance of DataCapture class, shared inside Listener. 
    */ 
} 

, 당신의 질문을 clatify하시기 고려

//somewhere in the code you create 
DataCapture dataCapture = new DataCapture(); 

그리고,.

관련 문제