내 질문은 : "classA"에서 호출 할 때 "classA"의 특정 필드를 검색하는 정적 클래스 "classB"에서 정적 메서드 "meth1"을 정의 할 수 있습니까? 어떤 클래스가 정의되어 있지 않습니까?) 더 나은 설명하려고 :이 같은 작업을 수행해야합니다정적 메서드에서 이름으로 개체를
public class classA
{
string someText;
int anInt;
bool trueOrFalse;
public classA()
{
...
...
var variable = classB.meth1("variableName");
...
...
}
}
public static classB
{
public static object meth1(string name)
{
...
... //use "name" to find the variable with that name in the class from which "meth1" is called.
...
}
}
그 나는 같은 라인에 의한 .txt 파일에 포함 된 변수의 "마지막 실행 값"의 백업 서면 라인을 읽을 수 있기 때문에 "변수 이름 = 값". 그래서 .txt를 읽고 ("변수 이름"; "값") 포함하는 해시 테이블 "backupHashtable"을 만든 다음 "변수 이름"문자열을 검색하여 "값"으로 재설정하려고합니다. 당신의 누군가가 더 나은 절차를 알고 있다면 나는 듣고 있습니다. 어쩌면 사전을 사용했을까요?
감사합니다.
이 좋아 UPDATING
는, 지금은 내가하고 싶은 것을 명확 생각이 : 내 메인 클래스 "를 ClassA"별도의 클래스 "ClassB가"을 구현하고자합니다. 이 새 클래스에서는 별도의 스레드에서 실행되는 "meth1"메서드를 사용하여 "classA"에 속한 일부 변수의 상태를 매 10 초마다 저장합니다. "meth1"이 저장해야하는 변수가 무엇인지 알려주기 위해이 변수의 이름 (형식이 "string"인 목록)을 사용하고 싶습니다.이 변수의 유일한 방법은 아닙니다. .
왜 내가이 작업을 별도의 스레드에서하고 싶은지 궁금한 점은 내 응용 프로그램이 여러 카메라의 라이브 스트림 이미지에서 일부 개체의 일부 인식 작업을 수행 한 후 보조 작업을 다음과 같이 많이 격리해야한다는 것입니다. 가능한 주요 코드에서 실행 속도를 높이십시오.
이제 아마도 내가 전에 말했던 것이 더 이해할 수있을 것입니다.
시리얼 라이저를 구현하려고합니까? 왜 기존의 것을 사용하지 않습니까? – Maarten
혼란 스럽네요. 왜 당신이 그것을 호출하는 클래스에있는 값을 되찾기 위해'meth1'이 필요한가요? 두 클래스 중 무엇을하려고하는지 보여주는 샘플 코드를 더 제공 할 수 있습니까? –
@Maarten 고맙습니다. 그것은 편리하게 올 것이다. 하지만 이해할 수 있듯이 직렬화는 응용 프로그램의 현재 상태를 저장하는 도구 일 뿐이지 만이 경우 하나의 컨테이너로 그룹화 된 다양한 유형의 변수가 필요합니다. – Andrea