问题: 定义过程中二维数组的声明 ( 积分: 30 )
分类: 控件 - 使用
来自: txl2001, 时间: 2005-07-20 10:41:00, ID: 3139850
2:如何在过程定义二维数组???
procedure Pro_Arr_clear(arr_tmp: array of array of integer)
这种声明方法对不对?为什么不能编译呢?
来自: cyrj2009, 时间: 2005-07-20 10:48:52, ID: 3139861
var
//定义一个动态二维数组变量
mydateArray: array of array of string
begin
//设置动态二维数组的大小,长度同样要在0~255之间
SetLength(mydateArray,4,4)
来自: cyrj2009, 时间: 2005-07-20 11:01:23, ID: 3139889
var
//定义一个动态一维数组变量
A;array of Integer
begin
//设置动态一维数组的大小,长度同样要在0~255之间
SetLength(A,10)
来自: txl2001, 时间: 2005-07-20 11:27:47, ID: 3139940
[red] 可以多次动态指定一个动态数组的大小么??? [/red]
来自: cyrj2009, 时间: 2005-07-20 12:02:28, ID: 3139992
可以多次动态指定一个动态数组的大小啊
SetLength(mydateArray,i,4)
但是必须退出调用定义动态数组的过程再次动态定义数组的大小
来自: txl2001, 时间: 2005-07-20 12:41:12, ID: 3140041
我可以一边给数组赋值一边调整数组的大小么??
来自: tswhq, 时间: 2005-07-20 12:51:23, ID: 3140050
如果认为以上的方法还不行的话,可考虑用指针
申请内存
...
操作
...
释放内存
来自: helloqiner, 时间: 2005-07-20 12:55:44, ID: 3140058
用 TObjectList 吧,跟 Hashtable 一样,非常方便
来自: Puha, 时间: 2005-07-20 13:43:52, ID: 3140129
type
BaseAry = array of String
type
StrAry=array of BaseAry
var
i:integer
begin
SetLength(StrAry,10)
for i:=Low(strAry) to High(strAry) do
begin
SetLength(strAry
,10)
end
end
来自: txl2001, 时间: 2005-07-25 14:49:55, ID: 3145799
help me~~
来自: loco, 时间: 2005-07-25 15:01:27, ID: 3145821
建议用variant类型,不要用动态数组
定义:
arr_tmp: variant
创建 2维数据
arr_tmp := VarArrayCreate([0,x,0,x], varInteger)
调用
arr_tmp[x,x]
来自: txl2001, 时间: 2005-07-25 15:39:09, ID: 3145915
我问的是如何在过程中定义二维数组:
procedure Pro_Arr_clear(arr_tmp: array of array of integer)
这种声明方法对不对?为什么不能编译呢?
来自: Puha, 时间: 2005-07-29 18:24:53, ID: 3150650
首先,你要理解,数组也是一种数据类型,只是是一种自定义。
首先,定义一个二维数据类型
//一维的
Tryp
AryOfInt = array of integer
//二维的
Type
DoublAryInt=array of AryOfInt
那么,你的过程就可以写成
procedure Pro_Arr_clear(arr_tmpoublAryInt)
来自: txl2001, 时间: 2005-08-09 13:13:43, ID: 3161051
多人接受答案了。
得分大富翁: cyrj2009-15,helloqiner-1,loco-3,Puha-10,tswhq-1,