Q&A

  • 레코드 타입의 멤버이름을 가져올 수 있나요?
안녕하세요? 델파이 7에서 작업 중인데요.
레코드 타입에 대해 궁금한 것이 있어서 질문 드립니다.

아래와 같이 레코드 타입이 있을 때

TTest = record
   S1: String[10];
   S2: String[20];
   D1: Double;
end;


var
  vTest: TTest;

코드 내에서  TTest의 멤버명과 멤버명에 해당하는 값, 타입을 알아낼 수 있을까요? 레코드 타입을 사용했을 때 로그에 레코드변수의 값을 로그에 남기고 싶거든요. 델파이 디버그할 때 레코드 변수를 클릭하면 값을 볼 수 있으니까 방법이 있을 것 같은 생각이 듭니다. 도움말씀 부탁드립니다.
2  COMMENTS
  • Profile
    인생술 2009.12.02 23:08
    제가 알기론 델파이 구조체는 타입 정보를 보관하지 않는 걸로 알고 있습니다. 그래서 런타임시에 구조체 멤버명을 가지고 올 수 있는 방법이 있는지 모르겠네요..차라리 구조체가 아닌 클래스로
    설정하여 Published 영역에 Property로 접근할 수 있게 한다면 GetPropList등의 RTTI 함수를 사용한다면 될거 같습니다..
  • Profile
    박성훈 2009.12.05 23:56
    그것도 방법이겠군요. 더 찾아봐야 겠네요. 감사합니다.