在Delphi中,使用Default(T)
函数可以测试泛型类型变量是否相等。Default(T)
函数返回类型T的默认值,例如对于整数类型,默认值为0,对于字符串类型,默认值为空字符串。
以下是一个示例代码,演示如何使用Default(T)
函数测试泛型类型变量是否相等:
program TestDefault;
{$APPTYPE CONSOLE}
uses
SysUtils;
function IsEqual<T>(const A, B: T): Boolean;
begin
Result := A = B;
end;
var
A, B: Integer;
S1, S2: string;
begin
A := 1;
B := 1;
WriteLn(IsEqual<Integer>(A, B)); // True
S1 := 'Hello';
S2 := 'Hello';
WriteLn(IsEqual<string>(S1, S2)); // True
S1 := '';
S2 := 'Hello';
WriteLn(IsEqual<string>(S1, S2)); // False
ReadLn;
end.
在上面的代码中,我们定义了一个泛型函数IsEqual<T>
,它接受两个类型为T的参数,并返回它们是否相等的布尔值。在函数内部,我们使用=
运算符来比较两个变量是否相等。
在主程序中,我们定义了两个整数变量A和B,以及两个字符串变量S1和S2。我们使用IsEqual<T>
函数来测试它们是否相等,并将结果输出到控制台。
需要注意的是,Default(T)
函数只能用于类型T的默认值,而不能用于任何类型的变量。如果需要测试任何类型的变量是否相等,可以使用Equals
函数。
领取专属 10元无门槛券
手把手带您无忧上云