記錄與陣列的宣告 |
答題得分者是:ccchen
|
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
請問各位! 我現在需要一個設定, 就是我一共有8個欄位資料要分別存入到8個變數
A1: STRING
A2: STRING
A3: FLOAT
A4: INTEGER
A5: DATETIME
A6: DATETIME
A7: STRING
A8: FLOAT
而這8個變數必須能依記錄多寡而全部存入
除了可以用一維陣列來指定外,
mdata1: array of string;
mdata2: array of string; ......
然後動態指定陣列長度
setlength(mdata1,10) 假設有10筆 但我想要記錄型態做, 則如何設定把記錄與陣列結合, 同時可以具有動態指定長度, 因為每次讀取記錄筆數都不同, 可否請各位指點一二, 謝謝!
|
ccchen
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:61 回覆:940 積分:1394 註冊:2002-04-15 發送簡訊給我 |
提供你一些思考方向, 有興趣的話可以去研究研究 1. 你可以用Record配合Array
Myrecord=record A1: STRING; A2: STRING; A3: double; A4: INTEGER; A5: DATETIME; A6: DATETIME; A7: STRING; A8: double; end; mdata:array of MyRecord;2. 也可以不用Array, 用TList或TStringlist來代替動態陣列, 其實很方便 3. 可以宣告兩類別分別繼承TCollection及TCollectionItem 4. 可以單純只用Variant 例如: v:=TQuery['field1;fields2...']; v可直接保存所有欄位值 如此v[0]即為field1之值, ... |
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |