У меня есть интерфейс под названием ILoader
. Это относится к типу объекта, который загружает файлы ресурсов.Интерфейсы FreePascal: функция, которая вернет «ничего»
ILoader = interface
function Load: TObject;
function FormatName: String;
end;
Довольно просто. Теперь, я хочу иметь несколько типов Loader
, тем TSurfaceLoader, TSoundLoader, TMusicLoader и т.д.
Проблема, как я указываю в interface
, что возвращаться из функций? SurfaceLoader
загрузит Surfaces, но Surface
не является TObject
, поэтому он не будет работать.
Что мне делать? Просто соедините интерфейс все вместе? (Я, вероятно, буду расширять его, это не всегда будет так мало.)
A Поверхность не является TObject? Тогда что это? –
@Robkennnedy Это запись, я думаю. –