2013-12-13 25 views
2

在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这意味着人们需要,如果使用两个类键入出完整的命名空间。简单地使用别名会很有用。

回答

5

据我所知,只能在Project Options中定义单位别名。这如果通过菜单中打开它,你可以设置Project/Options(或只需按CTRL + SHIFT + F11),而且在第一页上,你可以选定目标生成配置指定单元别名为Unit aliases集合在格式alias=namespace.unit像这张图片上显示:

enter image description here

+1

您应该在'Base'配置中定义这些别名(而不是图中的'Debug')。 – kludg

+0

@Serg,没错(虽然我只是将图片作为插图说明它是用于“选定的目标构建配置”)。固定;谢谢! – TLama

+0

非常感谢!精彩的工作! – Brendan

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; 

别名类型可以在普通单元中声明并包含在任何需要它的地方。

+0

谢谢 - 这也是一个很好的解决方案,但我更喜欢@TLama描述的项目选项中的单元别名设置 – Brendan