我知道命名空间是一个单元容器;但我还没有很好地理解它。我试图更好地解释我想要告诉的内容。例如我有四个单位:
1) Animals // es: class TAnimals
2) Animals.Dog // es: class TDog
3) Animals.Cat // es: class TCat
4) Animals.Cat.Female // es: class TFemale
当然,这四个单元是在四个不同的文件中。如果我制作新单元并需要全部使用它,我会写:
uses
Animals, Animals.Dog, Animals.Cat, Animals.Cat.Female
现在,直到很少有问题不存在,但是什么时候很多?所以我想知道,因为我可以更好地管理,只制作一个单元:包含所有其他单元的动物(命名空间根),例如:
uses
Animals;
并且可以从 Animal 访问在第二、第三等级别的所有其他命名空间中定义的所有其他类,例如:
program Project1;
uses
Animals;
var
x: Animals;
begin
x := TAnimals.Cat.Female.Create;
try
....
finally
x.Free;
end;
end.
在互联网上搜索,也许我已经找到了一些使用界面的东西,但我的印象是不正确的解决方案,因为在我看来,对于使用 delphi xe2 原生的东西来说,这很复杂。很可能我错了,或者它确实指的是一些旧版本的delphi;说真的,我不知道。但我想知道我这样做,当然如果可能的话。再次非常感谢。