Delphi中预想不到的代码 |
|
deity
尊榮會員 發表:90 回覆:876 積分:678 註冊:2003-05-09 發送簡訊給我 |
(*//
标题:Delphi中预想不到的代
整理:Zswang,
连接:http://www.csdn.net/Expert/TopicView1.asp?id=727243
日期:2002-06-22
支持:wjhu111@21cn.com
//*) { No.1 Delphi中的Include文件 }
begin
ShowMessage({$I File1.txt}; //有错吗?
ShowMessage(UpperCase({$I File1.txt});
end;
//新建一个文本文件“File1.txt”、内容填写为:“'Hello Word')”看看 { No.2 可爱的强制转换 }
var B: Byte
begin
Char(B) := 'A'; //我们通常写 B := Byte('A');
end; { No.3 常量表达式的下标 }
Caption := '你'[1] + '好'[2]; //是什么? { No.4 脱字号表达的字符 }
Caption := ^:^3^7^!^.^'; //这句可以没有写错
//参考:http://www.csdn.net/Expert/TopicView1.asp?id=658958 { No.5 非整数类型作下标 }
var A: array[Char] of Byte; //估计很多人都知道 { No.6 Inc()不只处理整数加一 }
var C: Char;
begin
C := 'A';
Inc(C); //没错吧
end; { No.7 "X[:X]"格式 }
> Text = '是'Text = '是'Text = ''Text = ''
|
Miles
尊榮會員 發表:27 回覆:662 積分:622 註冊:2002-07-12 發送簡訊給我 |
各位先進大家好:
這真是篇令我大開眼界的文章, 可能是我的基本功不太夠, 以下兩個問題提出
var B: Boolean; begin B := Boolean(2); if B = True then ShowMessage('B = True'); //測試結果B為True但為何沒執行, 若第一行改為B := Boolean(1)就會執行這要如何解釋 if B then ShowMessage('B'); end;以下這段不清楚的是一開始QueryTemp.Close這沒錯吧, 第二段省略這一行算是合法的寫法嗎?? begin QueryTemp.Close; QueryTemp.SQL.Text := 'SELECT SUM(金额) AS 合计 FROM 销售表'; QueryTemp.Open; //不建议//数据没有关闭造成资源浪费 ShowMessage(Query1.FieldByName('合计').AsString); ///// QueryTemp.SQL.Text := 'SELECT SUM(金额) AS 合计 FROM 销售表'; QueryTemp.Open; ShowMessage(Query1.FieldByName('合计').AsString); QueryTemp.Close; //建议用//使用完就关闭 end;以上請各位大大幫我解惑一下, 感謝 我不是高手, 高手是正在銀幕前微笑的人.
------
我不是高手, 高手是正在銀幕前微笑的人. |
sryang
尊榮會員 發表:39 回覆:762 積分:920 註冊:2002-06-27 發送簡訊給我 |
因為 Boolean 其實是一個 Integer,0 代表 False,其他都代表 True
而「True」這個「系統內建常數」的值是 1,「False」這個「系統內建常數」的值是 0 你可以試試看: ShowMessage(IntTostr(Integer(True))); ShowMessage(IntTostr(Integer(False))); 所以 Boolean(2) 當然不等於 True 咯 ===================引 用 Miles 文 章=================== 各位先進大家好: 這真是篇令我大開眼界的文章, 可能是我的基本功不太夠, 以下兩個問題提出 var B: Boolean; begin B := Boolean(2); if B = True then ShowMessage('B = True'); //測試結果B為True但為何沒執行, 若第一行改為B := Boolean(1)就會執行這要如何解釋 if B then ShowMessage('B'); end;第二段之前不應省略 QueryTmp.Close; 的 ===================引 用 Miles 文 章=================== 以下這段不清楚的是一開始QueryTemp.Close這沒錯吧, 第二段省略這一行算是合法的寫法嗎?? begin QueryTemp.Close; QueryTemp.SQL.Text := 'SELECT SUM(金) AS 合 FROM 售表'; QueryTemp.Open; //不建//p据有s造成D源浪9 ShowMessage(Query1.FieldByName('合').AsString); ///// QueryTemp.SQL.Text := 'SELECT SUM(金) AS 合 FROM 售表'; QueryTemp.Open; ShowMessage(Query1.FieldByName('合').AsString); QueryTemp.Close; //建用//使用完就s end;以上請各位大大幫我解惑一下, 感謝 我不是高手, 高手是正在銀幕前微笑的人.
------
歡迎參訪 "腦殘賤貓的備忘錄" http://maolaoda.blogspot.com/ |
christie
資深會員 發表:30 回覆:299 積分:475 註冊:2005-03-25 發送簡訊給我 |
{ 怎麼下 SQL }
//TQuery建議 Query1.SQL.Text:='INSERT INTO TAB1 VALUES(:V1,:V2)'; Query1.Params.ParamValues['V1'] :='A'; Query1.Params.ParamValues['V2'] :='AAA'; Query1.ExecSQL; //TADOQuery建議 ADOQuery1.SQL.Text:='INSERT INTO Tab1 VALUES(:V1,:V2)'; ADOQuery1.Parameters.ParamValues['V1']:='N'; ADOQuery1.Parameters.ParamValues['V2']:='NNN'; ADOQuery1.ExecSQL; =================引用 Diety 文章======================== (*// 标题:Delphi中预想不到的代碼 整理:Zswang, 连接:http://www.csdn.net/Expert/TopicView1.asp?id=727243 日期:2002-06-22 支持:wjhu111@21cn.com //*) . . . { No.4 字段赋值 } begin Table1.Edit; Table1.FieldByName('姓名').AsString := Edit1.Text; //不建议 Table1.FieldByName('日期').AsDateTime := Date; ///// Table1['姓名'] := Edit1.Text; //建议//简短、扩充性好 //Table1.Fieldvalues['姓名'] := Edit1.Text; //Borland建议的方法。以及Paramvalues[] Table1['日期'] := Date; end; . . .
------
What do we live for if not to make life less difficult for each other? |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |