というインターフェースがありますILoader
。これは、リソース ファイルをロードするタイプのオブジェクト用です。
ILoader = interface
function Load: TObject;
function FormatName: String;
end;
とてもシンプルです。Loader
ここで、TSurfaceLoader、TSoundLoader、TMusicLoader など、複数のタイプの が必要です。
問題は、interface
関数から返されるものをどのように指定するかです。はSurfaceLoader
サーフェスをロードしますが、 aSurface
は ではないためTObject
、機能しません。
私は何をしますか?インターフェースをすべて捨てるだけですか?(私はおそらくそれを拡張します。常にこれほど小さいとは限りません。)