关于数组动态生成的问题(0分)

  • 主题发起人 主题发起人 yanghx_yhx
  • 开始时间 开始时间
Y

yanghx_yhx

Unregistered / Unconfirmed
GUEST, unregistred user!

有如下定义:TPropertyList = array of PropertyUnit;
var PropertyLists:TPropertyList;
其中PropertyUnit = interface
['{A708CCE6-4511-9D28-4B3C-BEBB8EA4DA31}']
function _get_strKey : AnsiString;
procedure _set_strKey (const strKey : AnsiString);
function _get_strValue : AnsiString;
procedure _set_strValue (const strValue : AnsiString);
property strKey : AnsiString read _get_strKey write _set_strKey;
property strValue : AnsiString read _get_strValue write _set_strValue;
end;
那么,我使用PropertyLists[0].strkey:='nihao';
总是出现错误。
请问我该如何生成?
 
必须先分配空间:大小可以用变量指定.
例如定义了一个变量Length,
然后分配空间:SetLength PropertyLists[Length];这样就可以给数组赋值了.
 
interface在学习中...
用SetLength分配的空间是由Delphi自动管理的,不必手工释放。
用SetLength分配一个String类型的变量,不能访问第0号元素。不知道这里行不行
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
563
import
I
后退
顶部