我的应用程序中有一个需要返回数组的函数.我已经在几个地方找到了如何通过声明数组类型来做到这一点,例如
type
TStringArray = array of string;
Run Code Online (Sandbox Code Playgroud)
然后宣布我的功能
function SomeFunction(SomeParam: Integer): TStringArray;
Run Code Online (Sandbox Code Playgroud)
我的问题是尝试以具有接口和实现的形式设置它.如何声明我的类型并在界面中具有该类型的函数声明?
And*_*and 34
unit Unit1;
interface
uses SysUtils;
type
TStringArray = array of string;
function SomeFunction(SomeParam: integer): TStringArray;
...
implementation
function SomeFunction(SomeParam: integer): TStringArray;
begin
SetLength(result, 3);
result[0] := 'Alpha';
result[1] := 'Beta';
result[2] := 'Gamma';
end;
...
end.
Run Code Online (Sandbox Code Playgroud)
黄金法则是单元的接口部分描述单元使用的数据类型,以及驻留在单元中的类型,类和功能(它们的签名).这是所有其他单位看到的.实现部分包含类和函数的实现.这对于ohter单位是不可见的.其他单位需要关心单位的界面,本单位和外部单位签署的"合同",而不是实施部分中的"实施细节".
Wou*_*ick 14
如果你的Delphi是最近的,你不需要声明一个新的类型,通过声明它TArray<String>.
从上面的答案中复制并粘贴的示例:
unit Unit1;
interface
function SomeFunction(SomeParam: integer): TArray<String>;
implementation
function SomeFunction(SomeParam: integer): TArray<String>;
begin
SetLength(result, 3);
result[0] := 'Alpha';
result[1] := 'Beta';
result[2] := 'Gamma';
end;
end.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35836 次 |
| 最近记录: |