나는 Graphic_obj라는 기본 클래스를 가지고있다.클래스의 메소드를 기본 클래스로 호출하기
그리고 내가 예를 들어, 많은 파생 클래스가 있습니다 Graphic_obj_text, Graphic_obj_img을 ...
지금 난 내 만든 파생 된 모든 오브젝트로 목록을 갖고 싶어 ..List<Graphic_obj> obj_list=new List<Graphic_obj>();
지금 내 문제가 발생합니다 ..
나는 내 개체를 통해 이동하고 각 "내보내기"함수를 호출하지만 파생 클래스 자체에서 싶어요!
foreach (Graphic_obj obj in obj_list)
{
(obj as obj.GetType()).export_to_csv();
}
그러나 이것은 컴파일되지 않습니다 :
은 내가 이런 일을 상상
..에있는 경우/다른 원하는 또는 모든 유형의 파생 클래스의 전환 그들을 캐스팅하지 않습니다. .
나는이 방법처럼 작업을 수행 할 수 있습니다
obj.GetType().GetMethod("export_to_csv").Invoke(obj, null);
하지만 난 꽤 있다고 생각 더 쉽고 간편하게!
감사합니다.
메서드를 올바르게 재정의하는 경우 파생 메서드가 호출됩니다. 메소드 구현을 공유하십시오. –