在delphi中有没有这样一个函数,可以判定一个数据变量的数据类型(10分)

  • 主题发起人 主题发起人 ytht
  • 开始时间 开始时间
对基本类型不行。可以用Variant
 
从 TObject 下来的对象可以
基本的类型不能
 
可以自己做函数:
function IsString(VV : Variant) : Boolean;
然后用try...except语句来搞定
 
对于确定的简单对象, 比如string, integer等, 无须判断类型,
因为它们无法在不同类型之间混用, 比如:

var s:string;i:integer;
begin
i:=1;
s:=i; //error in compile
s:=inttostr(i); //correct
end;

对于可能存在不同类型的Variant变量, 有函数可以判断的:
function VarType(const V: Variant): Integer;

返回的就是V的类型, 具体定义参考Delphi的help.

对于对象, 好象可以用is操作符的. 比如:
if sender is TButton then
TButton(sender).click;
 
接受答案了.
 
后退
顶部