Delphi [마이그레이션] 함수(또는 변수)에 빨간밑줄이 가고 컴파일 시 Undeclared Identifier 오류 시 조치방법
2015.09.30 14:53
오래된 델파이 버전에서 최근 버전으로 마이그레이션 시 일부 함수(또는 상수, 변수)들이 다른 유닛으로 이동한 경우 아래와 같이 빨간 밑줄이 생깁니다.
또한, 컴파일 시 아래와 같이 "Undeclared Identifier" 오류가 발생합니다.
이때, 빨간 밑줄과 컴파일 오류("Undeclared Identifier")를 해결하려면 uses 절에 함수가 선언된 유닛을 추가하면 됩니다.
위 그림과 같이 "VarIsNul, VarArrayOf" 함수의 경우 System.Variants 유닛에 선언되어 uses 절에 System.Variants를 추가했습니다.
만약, 해당 함수가 어떤 유닛에 선언되어있는지 모른다면 아래와 같이 함수를 블럭으로 선택 후 F1 키를 눌러 도움말을 이용해 유닛이름을 확인할 수 있습니다.
VarIsNul 함수의 도움말 중 Source 항목의 "System.Variants.pas" 중 ".pas"를 제외한 부분(System.Variants)을 uses절에 추가합니다.
만약 아래의 DecimalSperator와 같이 부모(Parent)가 있는 경우 부모를 포함해 코드를 사용해야 합니다.
(DecimalSperator > TFormatSettings.DecimalSperator)