arr : array of variant;
로 선언한 다음에
arr에 integer를 넣든 string을 넣든
arr의 데이터 형을 알 수 있는 방법을 알려 주세요.
예를 들어 저 arr 배열을 함수로 넘기고 싶은데
저 arr배열의 데이터 형에 맞게 작업을 하고 싶습니다
즉, string일 경우 showMessage(arr[1]); 식으로 출력을 하고
int 일 경우에는 arr[1] + arr[2]의 계산을 하는 식으로 할꺼거든요~
고수님들 도움 좀 부탁 드릴꼐요~ 감사합니다.
variant형은 unit Variants에 있는 함수사용해보세요
<!--CodeS-->
function VarType(const V: Variant): TVarType;
begin
Result := TVarData(V).VType;
end;
<!--CodeE-->
예제는
<!--CodeS-->
var
pValue : Variant;
begin
try
if (pValue <> null)and(Length(pValue) > 0) then begin
if varType(pValue) in [VT_BSTR] then
result := WideString(pValue)
else
result := CurrToStr(pValue);
end;
except
result := '';
end;
<!--CodeE-->