Q&A

  • 문자열과 같은 이름의 변수명의 실행값을 알수 있나요?
안녕하세요.

델파이 사용자 홍진혁이라 합니다.



질문은 다음과 같습니다.

먼저 Edit.text에 'crstime'이라는 문자열을 치면 프로그램에서 사용되는 crstime 이라는 변수명의 현재값을 출력하는 프로그램을 짜려고 하는데 그것이 쉽지가 않군요.



찾기를 원하는 것이 Object라면 FindComponent()하면 되는데 구하고자 하는 것이 그 프로그램에서 사용되는 전역변수의 현재값이라 막막하군요.



고수님들의 많은 관심 부탁드립니다.



1  COMMENTS
  • Profile
    정재필 2001.01.25 21:20
    우선... 단순한 변수일 경우에는 불가능합니다.

    델파이는 완전한 실행코드를 생성합니다.

    따라서 컴파일 후에는 소스의 변수이름은 아무런 의미가 없는겁니다.

    편법을 쓰면 가능할 것 같기도 한데요...(비슷하게...)



    각 변수별로 클래스를 만들어서...

    (클래스 멤버 변수로...Name, Type, Address를 선언)

    변수 이름을 Name에 저장해두고, Type에는 변수의 형을 저장,

    Address는 변수의 실제 메모리 주소를 저장...



    검색은 Name을 이용해 하고, 변수 값을 읽을 때는...

    Type으로 변수의 형을 판단하고... Address의 주소를 참조해서 변수의 값을 읽으면

    되겠죠...

    참고로... 좀 더 편하게 하려면... TList를 이용하셔서... 클래스를 관리하는게

    편할겁니다. ^^; 아니면 배열로 관리하셔도 되구...



    PS. 이 방법이 원하시는 거랑 비슷하긴 한데... 프로그래밍이 좀 불편한게 단점이죠==;







    홍진혁 wrote:

    > 안녕하세요.

    > 델파이 사용자 홍진혁이라 합니다.

    >

    > 질문은 다음과 같습니다.

    > 먼저 Edit.text에 'crstime'이라는 문자열을 치면 프로그램에서 사용되는 crstime 이라는 변수명의 현재값을 출력하는 프로그램을 짜려고 하는데 그것이 쉽지가 않군요.

    >

    > 찾기를 원하는 것이 Object라면 FindComponent()하면 되는데 구하고자 하는 것이 그 프로그램에서 사용되는 전역변수의 현재값이라 막막하군요.

    >

    > 고수님들의 많은 관심 부탁드립니다.

    >