此函式可以用variant返回多個欄位的值
function tdataset.getfieldvalue(const fieldname: string): variant;
vari: integer;
fields: tlist;
begin
if pos(';', fieldname) <> 0 then
begin
fields := tlist.create;
trygetfieldlist(fields, fieldname);
result := vararraycreate([0, fields.count - 1], varvariant);
for i := 0 to fields.count - 1 do
result[i] := tfield(fields[i]).value;
finally
fields.free;
end;
end else
result := fieldbyname(fieldname).value
end;
---此函式可以返回fieldnames中多個欄位中第pos個字段的欄位名,在db檔案中;ps:我手裡有一組api,也是類似功能。應該比它更強大,因為介面有mask欄位,不知道效能怎麼樣?
extractfieldname(fieldnames, pos);
--可以在不影響dataset游標的情況下返回指定的值--ps:太爽啦,找了幾年這個函式,終於找到了。
function lookup(const keyfields: string; const keyvalues: variant; const resultfields: string): variant; override;
兩個有意思的模擬
今天在群裡閒聊當前疫情的情況,看到兩個以技術思路做的模擬,挺有意思的,不長,或許有些幫助。第乙個,ddos和cc 這次大量病例的爆發,其實就像是對醫療體系的ddos,外加cc。這種從防攻擊角度,要麼有抗d的平台,洗掉惡意 非真實感染者 流量,放真實流量進來,但是目前看,沒有特效藥,沒有快速的檢測機制...
兩個有意思的遞迴小程式
最近聽到的兩道面試 筆試題,感覺挺有意思的 1。實現庫函式strlen,不能使用任何庫函式,不能定義任何變數。2。實現函式strrev,該函式有兩個引數,將其中乙個字串逆序放到另乙個字串指標中,同樣要求不能使用任何庫函式,不能定義任何變數。採用遞迴實現,剛好可以滿足這兩道題的要求 void strr...
有意思的兩個值作為主鍵
有乙個表,需要兩個欄位date和platform作為主鍵。於是我把這兩個字段封裝成乙個物件,並重寫等於 小於運算子或hash值 實際沒有重寫成功,用的是python 才能夠將物件作為dict 字典 的key。剛接觸python,沒能實現我想要的 冥思苦想之際,得人指點 廢那勁幹嘛,直接把這兩個值用字...