var InSqlData :olevariant;InSqlData:= VarArrayCreate([0,100,0,100], varVariant);//这个4围数组中的0,100,0,100怎么解释。还用下面的InSqlData[0,0]:=等怎么解释。我对数组是一塌糊涂。能否详细解释呀? InSqlData[0,0]:='SQL';InSqlData[0,1]:='Insert';InSqlData[0,2]:='T_PORT';
InSqlData[1,0]:='portid';InSqlData[1,1]:='Function';InSqlData[1,2]:='dbo.getnewid('''+'T_PORT'+''')';//DataSetMain.FieldValues['PORTID'];
InSqlData[1,3]:='porttypeid';InSqlData[1,4]:='int';InSqlData[1,5]:=porttypeid;
InSqlData[1,6]:='countryid';InSqlData[1,7]:='int';InSqlData[1,8]:=countryid;
InSqlData[1,9]:='portname';InSqlData[1,10]:='varchar(20)';InSqlData[1,11]:=DataSetMain.FieldValues['portname'] ;
InSqlData[1,12]:='Postalcode';InSqlData[1,13]:='varchar(10)';InSqlData[1,14]:=Postalcode ;
InSqlData[1,0]:='portid';InSqlData[1,1]:='Function';InSqlData[1,2]:='dbo.getnewid('''+'T_PORT'+''')';//DataSetMain.FieldValues['PORTID'];
InSqlData[1,3]:='porttypeid';InSqlData[1,4]:='int';InSqlData[1,5]:=porttypeid;
InSqlData[1,6]:='countryid';InSqlData[1,7]:='int';InSqlData[1,8]:=countryid;
InSqlData[1,9]:='portname';InSqlData[1,10]:='varchar(20)';InSqlData[1,11]:=DataSetMain.FieldValues['portname'] ;
InSqlData[1,12]:='Postalcode';InSqlData[1,13]:='varchar(10)';InSqlData[1,14]:=Postalcode ;
InSqlData[0,2]
InSqlData[0,3]
...以此类推
0代表下界,100代表上界,InSqlData[0,0]是2维数组的一个元素,坐标为[0,0],可以直接给这个元素赋值
begin
A := VarArrayCreate([0, 4], varVariant);
A[0] := 1;
A[1] := 1234.5678;
A[2] := 'Hello world';
A[3] := True;
A[4] := VarArrayOf([1, 10, 100, 1000]);
WriteLn(A[2]); { Hello world }
WriteLn(A[4][2]); { 100 }
end;
这是delphi帮助自带的例子,讲的很清楚了,你自己看一下,没有[0..100,0..100]的写法
type
MonthTemps = array [1..24, 1..31] of Integer;
YearTemps = array [1..24, 1..31, Jan..Dec] of Integer;这是从ESSENTIAL DELPHI上摘下来的
Maze[0,1,0] = 2
Maze[0,1,1] = 3
Maze[1,0,0] = 4
Maze[1,0,1] = 5
Maze[1,1,0] = 6
Maze[1,1,1] = 7Array constants cannot contain file-type values at any level.--------------------------------------------------------------------------
| |
| 抓你頭 踢你臉,嘴裡唱著心太軟 |
| 先踢腿 後踢背,胯胯軸子踹稀碎; |
| 腰打斷 腿打折,肋巴扇子蹬骨折; |
| 先抽筋 再放血,腦袋瓜子打稀癟! |
| 服不? |
| |
--------------------------------------------------------------------------
VarArrayCreate[0..100,0..100],表示一个二维数组 InSqlData[0,0] 表示二维数组的其中一个元素
0,100是下标,InSqlData[0,0]:= 就是算出下标为 0,0位置的数据赋值啊
帮助中的例子::The following example creates a one-dimensional variant array with five elements. Each of the elements are of type Variant, and can therefore contain values of varying types, as is illustrated by the example. Notice in particular how the value of the last element of the array is itself a variant array.var A: Variant;
begin
A := VarArrayCreate([0, 4], varVariant);
A[0] := 1;
A[1] := 1234.5678;
A[2] := 'Hello world';
A[3] := True;
A[4] := VarArrayOf([1, 10, 100, 1000]);
WriteLn(A[2]); { Hello world }
WriteLn(A[4][2]); { 100 }end;