为引用的命名空间创建别名

时间:2013-12-13 15:32:33

标签: delphi firemonkey delphi-xe5

在C#中,可以为引用添加“别名”。例如

using xyz = Microsoft.Office.Interop.Excel;

然后在代码中,我们可以简单地将该类称为 xyz.Method

可以在Delphi使用子句中执行类似的操作吗?例如。

//This is just an example
uses
  System.IOUtils As xyz;

询问的原因是System.IOUtils& FMX.Objects包含TPath,这意味着如果使用两个类,则需要输出完整的命名空间。简单地使用别名就很有用。

2 个答案:

答案 0 :(得分:5)

据我所知,您只能在Project Options中定义单位别名。如果您通过菜单Project / Options打开它(或者只需按 CTRL + SHIFT + F11 )就可以设置在第一页上,您可以使用alias=namespace.unit格式为所选目标构建配置的Unit aliases集合指定单位别名,如下图所示:

enter image description here

答案 1 :(得分:3)

如果要为类型创建别名(而不是为所有命名空间创建),可以使用以下代码(我编写它来解释您的情况)

uses
  System.IOUtils, FMX.Objects;

procedure TForm1.FormCreate(Sender: TObject);
type
  TIOPath = System.IOUtils.TPath;
  TFMXPath = FMX.Objects.TPath;
var
  FMXPath: TFMXPath;
begin
  ShowMessage(TIOPath.GetExtension('sample.txt'));
  FMXPath := TFMXPath.Create(self);
  try
    // Use the FMXPath
  finally
    FMXPath.Free;
  end;
end;

别名类型可以在一个公共单位中声明,并包含在您需要的任何地方。

相关问题