亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Delphi > 正文

Delphi編碼標準——一般的源代碼格式規則

2019-11-18 18:36:30
字體:
來源:轉載
供稿:網友
編碼標準主要是為開發組提供一種編程時的準則,使項目開發人員在編程時有一致格式可遵循。這樣,開發組中每個編程人員編寫的代碼能夠被其他人理解,從而提高代碼的可維護性,使得一套多人寫的軟件就像一人寫的,使得代碼更易理解。這要求大家使用一致的代碼樣式。
那么,之所以老生常談介紹這些標準,是因為當新的開發人員加入項目開發組時,有的可能還不熟悉Delphi的編碼標準。
      在這里將分以下幾類來介紹這些標準:
1 一般的源代碼格式規則
2過程和函數
3 文件、窗體與數據模塊命名
4 包、組件命名
一般的源代碼格式規則
縮進
縮進就是每級間有兩個空格。不要在源代碼中放置制表符。這是因為,制表符的寬度隨著不同的設置和代碼管理實用程序(打印、文檔及版本控制等)而不同。
邊距
邊距設置為80個字符。源代碼一般不會因寫一個單詞而超過邊距,但本規則比較靈活。只要可能,長度超過一行的語句應當用逗號或運算符換行。換行后,應縮進兩個字符。
括號
在左括號與下一字符之間沒有空格。同樣,右括號與前一字符也沒有空格。
下面的例子演示了正確與不正確的空格。
CallPRocedure( Parameters ); // 錯!
CallProcedure (Parameters); // 正確!
保留字和關鍵字
Object Pascal語言的保留字和關鍵字總是完全的小寫。
begin...end
begin語句必須單獨占一行。
例如,下面第一行是錯誤的,而第二行正確:
for i:=0 to 10 do begin
Statement
end// 錯, begin 與for在同一行
for i:=0 to 10 do //正確! begin 在另外一行中
begin
Statement
end
本規則的一個特殊情況是,當begin為else語句的一部分時。
例如:
if Condition then
begin
Statement
end
else begin
Statement;
end
end語句總單獨一行。當begin不為else語句的一部分時,相應的end語句與begin語句的縮進量相同。
語句
(1) if_then_else語句
最有可能執行的情況應放在then子句中,不太可能的情況放在else子句中。
為了避免出現許多i f語句,可以使用case語句代替。
如果多于5級,不要使用i f語句。請改用更清楚的方法。
不要在i f語句中使用多余的括號。在源代碼中,括號只有在確實需要時才使用。
例如:
if (I=42) then // 錯,括號是多余的
if (I=42) or (J=42) then // 正確,必須使用括號
如果在i f語句中有多個條件要測試,應按照計算的復雜程度從右向左排。這樣,可以使代碼充分利用編譯器的短路估算邏輯。如果Condition1比Condition2快,Condition2比Condition3快,則if語句應這樣構造:if Conditior1 and Condition2 and Condition3 then
(2) case_else語句
case語句中每種情況的常量應當按數字或字母的順序排列。
每種情況的動作語句應當簡短且通常不超過4 ~ 5行代碼。如果動作太復雜,應將代碼單獨放在一個過程或函數中。case語句的else子句只用于默認情況或錯誤檢測。
(3) while 語句
建議不要使用exit過程來退出while循環。如果需要的話,應當使用循環條件退出循環。所有對w h i l e循環進行初始化的代碼應當位于w h i l e入口前,且不要被無關的語句隔開。任何業務的輔助工作都應在循環后立即進行。
(4) for語句
如果循環次數是確定的,應當用for語句代替while語句。
(5) repeat語句
repeat語句類似于while循環,且遵循同樣的規則。
(6) with語句
with語句應小心使用。要避免過度使用with語句,尤其是在with語句中使用多個對象或記錄。
例如:
with Record1,Record2 do
這些情況很容易迷惑編程人員,且導致調試困難。
結構化異常處理
異常處理主要用于糾正錯誤和保護資源。這意味著,凡是分配資源的地方,都必須使用try... finally來保證資源得到釋放。不過,如果是在單元的初始/結束部分或者對象的構造器/析構器中來分配/釋放資源則例外。
(1) try... finally的用法
在可能的情況下,每個資源分配應當與try... finally結構匹配。
例如:
//下面代碼可能導致錯誤
SomeClass1: = TSomeClass.Create;
SomeClass2: = TSomeClass.Create;
try
{do some code}
finally
SomeClass.Free;
SomeClass.Free;
e n d ;
//上述資源分配的一個安全方案是:
SomeClass1: = TSomeClass Create;
try
SomeClass2: = TSomeClass Create;
try
{do some code}
finally
SomeClass2.Free;
end;
finally
SomeClass1.Free;
end;
(2) try...except的用法
如果你希望在發生異常時執行一些任務,可以使用try...except。通常,沒有必要為了簡單地顯示一個錯誤信息而使用try...except,因為application對象能夠自動根據上下文做到這一點。如果要在子句中激活默認的異常處理,可以再次觸發異常。
(3) try... except...else的用法
不鼓勵使用帶else子句的try...except,因為這將阻塞所有的異常,包括你沒有準備處理的異常。

上一篇:Delphi編碼標準——過程和函數

下一篇:Delphi編碼標準——窗體與數據模塊命名

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文字幕国内精品| 亚洲欧美精品一区| 人妖精品videosex性欧美| 精品色蜜蜜精品视频在线观看| 精品视频偷偷看在线观看| 久久av中文字幕| 精品国偷自产在线视频| 伊人久久久久久久久久| 日韩综合视频在线观看| 国产成人精品久久二区二区| 1769国内精品视频在线播放| 成人国产精品一区二区| 91久久国产婷婷一区二区| 国产日韩在线亚洲字幕中文| 中文字幕国内精品| 亚洲www在线观看| 国产精品一区二区久久国产| 91av在线视频观看| 日韩精品在线免费观看| 米奇精品一区二区三区在线观看| 91精品视频网站| 精品性高朝久久久久久久| 亚洲性线免费观看视频成熟| 成人一区二区电影| 久久久久久久一区二区三区| 日韩精品福利网站| 亚洲精品不卡在线| 91免费福利视频| 精品视频偷偷看在线观看| 欧美精品在线免费| 久久电影一区二区| 91色在线观看| 久久久99久久精品女同性| 亚洲欧洲国产一区| 国产精品美乳一区二区免费| 日韩中文字幕免费视频| 色婷婷综合久久久久| 久久久成人av| 欧美日韩在线视频一区二区| 久久精品国产欧美激情| 日韩国产高清污视频在线观看| 国产欧美一区二区三区久久人妖| 91免费看片在线| 亚洲中国色老太| 国产精品99久久久久久白浆小说| 欧美激情久久久久久| 亚洲最新av在线| 精品国产一区av| 欧美亚洲伦理www| 亚洲无限乱码一二三四麻| 国产69精品99久久久久久宅男| 久久99热这里只有精品国产| 成人性生交大片免费看小说| 国产香蕉一区二区三区在线视频| 一区三区二区视频| 九九九久久久久久| 久久久久国产一区二区三区| 国产一区二区欧美日韩| 俺也去精品视频在线观看| 国产精品igao视频| 国产精品91久久久久久| 欧美日韩在线视频一区二区| 欧美性猛交99久久久久99按摩| 国产盗摄xxxx视频xxx69| 国内精品一区二区三区四区| 国产欧美一区二区三区四区| 日本高清+成人网在线观看| 一区二区在线视频播放| 国产精品免费久久久| 欧美色xxxx| 久久躁狠狠躁夜夜爽| 欧美成人精品激情在线观看| 久久精品视频中文字幕| 欧美性感美女h网站在线观看免费| 国产精品一区二区久久精品| 久久精品成人一区二区三区| 日韩精品视频免费| 国内精品模特av私拍在线观看| 日韩欧美在线免费观看| www欧美xxxx| 黄色91在线观看| 欧美成人激情视频免费观看| 国产精品久久久久久久久影视| 亚洲高清福利视频| 丝袜一区二区三区| 成人免费视频在线观看超级碰| 91精品国产高清自在线看超| 亚洲色图美腿丝袜| 91免费版网站入口| 国产欧洲精品视频| 成年无码av片在线| 91超碰caoporn97人人| 亚洲人成电影网站色xx| 91精品国产九九九久久久亚洲| 最近2019中文字幕大全第二页| 国产成人亚洲综合| 亚洲男女自偷自拍图片另类| 国产精品久久久久9999| 日本不卡免费高清视频| 国产欧美欧洲在线观看| 91国内揄拍国内精品对白| 国内精品久久久久久中文字幕| 欧美成人免费视频| 欧美日韩激情视频8区| 国产aⅴ夜夜欢一区二区三区| 中文字幕亚洲一区二区三区| 亚洲人成电影网站色www| 亚洲第一页中文字幕| 深夜成人在线观看| 亚洲第一视频网站| 久久久久久高潮国产精品视| 欧美性极品少妇精品网站| 国产精品18久久久久久麻辣| 国产精品久久一| 成人黄在线观看| 97在线日本国产| 欧美高清视频在线观看| 国产一区二区在线免费视频| 欧美裸体xxxx极品少妇软件| 欧美精品videos| 久久久久久久久国产精品| 国产成人自拍视频在线观看| 欧美激情精品久久久| 欧美肥老妇视频| 日韩欧美在线网址| 欧美成aaa人片免费看| 夜夜嗨av一区二区三区四区| 国产精品视频男人的天堂| 欧美成人免费va影院高清| 亚洲3p在线观看| 最新国产精品拍自在线播放| 亚洲视频专区在线| 欧洲成人性视频| 久久69精品久久久久久久电影好| 亚洲天堂男人天堂| 日本国产一区二区三区| 国产精品678| 国产精品免费一区豆花| 欧美日韩在线视频一区二区| 亚洲一区亚洲二区亚洲三区| 夜夜躁日日躁狠狠久久88av| 最新国产成人av网站网址麻豆| 欧美日韩国产限制| 久久av.com| 国产这里只有精品| 久久精品国产一区二区电影| 亚洲二区在线播放视频| 91成人在线观看国产| 久久久999精品视频| 中文日韩在线视频| 国产精品久久久久av| 欧美性猛交xxxx免费看久久久| 国产午夜精品免费一区二区三区| 日韩精品在线免费观看视频| 精品成人在线视频| 国语自产在线不卡| 亚洲伦理中文字幕| 久久精品99无色码中文字幕| 亚洲区在线播放| 欧美大片免费看| 久久国产精品影视| 久久久久五月天| 国产精品久久久久91| 久久伊人91精品综合网站|