更多Pascal困境。
假设我有2个单位,MainUnit
和ExampleClass
。
MainUnit:
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
声明中。
你是怎么做到的?
答案 0 :(得分:1)
把
type ClassThing = ExampleCLass.ClassThing;
在mainunit的界面中。
这个原则也适用于consts,但只适用于“真实”原则(不是更多初始化变量的类型):
const myconst = unitname.myconst;
几乎所有常用的类型都是类似的别名,因此我可以轻松地在定义它们的地方移动,而无需更改所有商业代码单元中的uses子句