我真的不明白这种不相容的类型'错误(Delphi XE2)
function TWaveBase.GetHandle: THandle;
begin
if HandleNeeded then begin
if HandleAllocated then
CloseHandle;
CreateHandle(False);
end;
FHandleNeeded:=False;
Result:=FHandle;
end;
[...]
property Handle:Cardinal read GetHandle;
- >错误在这里
答案 0 :(得分:3)
THandle
是在Delphi XE中基于Cardinal
声明的类型。 (由于64位和跨平台,它在XE2中定义为NativeUInt
。它是一种新型。
如果您的GetHandle
获取者返回THandle
,则您的属性也应声明为THandle
。改变它,事情应该正常。