c#键入别名/自定义类型

Jam*_*ass 4 c# delphi types

我试图将一些Delphi代码转换为c#,我遇到了一个问题......

在Delphi中,我已经推出了一种新类型

Type TData = Array of Extended
Run Code Online (Sandbox Code Playgroud)

在哪里我可以访问返回此类型的函数的结果与语句,如

Function TMyObject.ReadData:TData;
begin
...
end;

Data := MyObject.ReadData;
Result = Data[7] + Data[12]
Run Code Online (Sandbox Code Playgroud)

现在,如果我最初宣称这个,Array of Single那么我可以改变这一行来改变精度.(我可能不久要将其降低到以Double使任何结果与c#版本完全匹配.

所以问题是我可以在c#中做类似的事吗?就像是

class Data : Double[]
Run Code Online (Sandbox Code Playgroud)

虽然不完全像这样,因为它不编译,或者我会这样做

class DataEntry : Double
...
public DataEntry[] Read
{
...
}
Run Code Online (Sandbox Code Playgroud)

SLa*_*aks 5

你可以在C#中获得的最接近的是

using DataEntry = System.Double;
Run Code Online (Sandbox Code Playgroud)

把它放在每个文件的顶部.

  • @Darin,它具有单点定义的好处. (2认同)