Паскаль: полностью импортировать модуль в текущую область
Больше горе Паскаля.
Скажем, у меня есть 2 единицы, MainUnit
, а также ExampleClass
,
Основной блок:
Unit MainUnit;
interface
Uses ExampleClass;
function ReturnFive: Integer;
implementation
function ReturnFive: Integer;
begin
ReturnFive := 5;
end;
begin
end.
ExampleClass:
Unit ExampleClass;
{$mode objfpc}
interface
type
ClassThing = Class
SampleValue: Integer;
end;
implementation
begin
end.
Теперь я хотел бы только импортировать MainUnit
, но все же сможете использовать ClassThing
, MainUnit
uses ExampleClass
, но ClassThing
не используется при импорте MainUnit
,
Я не хочу просто use
ExampleClass
вместе с MainUnit
Я бы предпочел сохранить его в одном uses
заявление.
Как ты это делаешь?
1 ответ
Положил
type ClassThing = ExampleCLass.ClassThing;
в интерфейсе главного блока.
Принцип также работает для констант, но только для "настоящих" (не типизированных, которые являются более инициализированными переменными):
const myconst = unitname.myconst;
Почти все мои наиболее часто используемые типы являются схожими псевдонимами, так что я могу легко перемещаться туда, где они определены, не изменяя условие использования во всех единицах бизнес-кода