次の関数でエラーが発生Incompatible types: 'PPointerList' and 'TPointerList'
しています。
function MyFunction: PPointerList;
begin
result := FList.List;
end;
FList.List は TPointerList 型を返します。このコードは Delphi 7 コードでは問題なく動作しますが、Delphi XE4 ではエラーがスローされます。
PPointerList と TPointerList は System.Classes で宣言されています。
System.Classes 内
PPointerList = ^TPointerList;
TPointerList = array of Pointer;
TPointerListをPPointerListに型キャストすると、次のように機能しました
function MyFunction: PPointerList;
begin
result := PPointerList(FList.List);
end;
それは正しい解決策ですか、それともこのエラーを取り除くために何をすべきですか。