作者yuchih0519 (昱)
看板Programming
标题[问题] 关於阵列问题(Delphi)
时间Thu Nov 6 14:23:55 2008
各位板上的前辈,
小弟是初学Delphi的新手,以前只碰过一些VBA(VB6),
现在对Delphi的阵列运用上遇到了不小的问题...
1.想要在程式中宣告多维(二维以上)阵列常数,
但是大小不固定,以二维为例,A[0..3][]
A[0]:长度为3的一维阵列[0..2]
A[1]:长度为2的一维阵列[0..1]
A[2]:长度为10的一维阵列[0..9]
A[3]:长度为1的阵列or单值
(上述的资料型态都是string)
有可能宣告得出这样子的常数吗?
2.动态阵列即使指定了正确的维度大小,也不能直接赋值?
Const A:array[0..5] of array[0..3] of string=(....);
var B:array of array of string;
程式码中写
setlength(B,6,4);
B:=A; <--这一步会出错,原因是incompatible 'array' and 'dynamic array'
一定要跑回圈一个一个元素把值塞进去才行。
请问没有特别的函式或是副程式去做阵列的复制吗?
我找了一些Delphi的书和网路资料,对阵列的叙述都只有轻轻带过而已,
希望板上熟Delphi的前辈可以帮我指点一下,谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.124.31.243