我想写一个类,用来加载数据,数据加载好后存放在类成员StrArray:array of array of String;中,然后在工程中用“类对象.StrArray”来使用二维数组,该怎么实现,下面是我写的代码,有错误,请指正
unit Unit2;
interface
uses
Dialogs,SysUtils;
type
Ddata=class
StrArray:array of array of String;
function LoadData(): Boolean;
end;
var
data:Ddata;
implementation
function Ddata.LoadData(): Boolean;
begin
SetLength(data.StrArray,2,2);
{ 。。。。
初始换 data.StrArray 等工作
}
result := True;
end;
end.
一到这里就出错 SetLength(data.StrArray,2,2);
SetLength(data.StrArray,2,2);
你这是什么写法?Delphi没有这个函数,
Delphi的SetLength只有两个参数:变量,长度;
你这个动态2维数组不能这样初始化
setLength(data.StrArray, 2);
for i:= 0 to High(data.StrArray) do begin
SetLength(data.StrArray[i], 2);
end;
你这是什么写法?Delphi没有这个函数,
Delphi的SetLength只有两个参数:变量,长度;
你这个动态2维数组不能这样初始化
setLength(data.StrArray, 2);
for i:= 0 to High(data.StrArray) do begin
SetLength(data.StrArray[i], 2);
end;
温馨提示:答案为网友推荐,仅供参考
第1个回答 2009-11-27
真是的,如上所述:
加一句:
data := Ddata.create;
SetLength(data.StrArray,2,2);
{ 。。。。
初始换 data.StrArray 等工作
}
result := True;
用完记着释放。
data.free;
加一句:
data := Ddata.create;
SetLength(data.StrArray,2,2);
{ 。。。。
初始换 data.StrArray 等工作
}
result := True;
用完记着释放。
data.free;
第2个回答 2009-11-27
.....
你data对象都没有创建 怎么能使用呢?
你data对象都没有创建 怎么能使用呢?