一、異常的**。
在delphi的應用程式中,下列的情況都比較有可能產生異常。
(1)檔案處理
(2)記憶體分配
(3)windows資源
(4)執行時建立物件和窗體
(5)硬體和作業系統衝突
二、異常的處理。
(1)try…except…end;
在try體內的**發生異常時,系統將轉向except部分進行異常的處理。這是delphi處理異常的最基本的方式之一。
(2)try…finally…end;
這種異常處理結構一般用於保護windows的資源分配等方面,它確保了無論try體內的**是否發生異常,都需要由系統進行最後的統一處理的一些windows物件的正確處理。
和try…except…end不同,該結構的finally部分總被執行。
(3)不存在try…except…finally…end結構來既處理異常,又保護資源分配的結構,但是,try…except…end結構允許巢狀到try…finally…end結構中,從而實現既處理異常,又保護資源的分配。
三、異常的精確處理。
(1)定義乙個異常。
在delphi中,每個異常都是exception[1]類的乙個派生類[2]。因此,定義乙個異常就是定義乙個exception類的派生類。
type emyexception = class(exception);
當然,基類可以是exception或者exception的任何乙個任何層次的派生類。
(2)在程式中丟擲乙個異常。
根據不同的情況丟擲異常是使用異常的最基本的模式。在delphi中,由raise語句來實現。
【語法】raise 異常類.create(『異常的預設說明』);
(3)在try…except…end中更加精確的捕捉異常。
使用on e:異常類 do…結構可以在do體內處理特定異常類所丟擲的異常。
四、異常的除錯。
在delphi ide中,解除「debugger options」(可以使用選單tools—>debugger options…進行訪問)中的integrated debugging核取方塊的勾選狀態可以進行異常的除錯。
五、異常的補充說明。
(1)每一段程式都有可能產生錯誤!這是軟體業的乙個不容置疑的現象和規律。事實上,傳統的if…else…結構完全可以解決所有的錯誤,使用exception機制也沒能夠迴避在最原始的層次,通過遍歷可能的情況來產生異常的做法,那麼,為什麼還要異常機制?
答案很清楚:異常提供了一種更加靈活和開放的方式,使得後來的程式設計者可以來根據實際的情況處理這種錯誤,而不是使用預先設定好的處理結果。實際上,我覺得,這也就是異常機制的核心。
Delphi異常處理的基本原則和方法
delphi異常處理的基本原則和方法 一 異常的 在delphi的應用程式中,下列的情況都比較有可能產生異常。1 檔案處理 2 記憶體分配 3 windows資源 4 執行時建立物件和窗體 5 硬體和作業系統衝突 二 異常的處理。1 try except end 在try體內的 發生異常時,系統將轉...
Delphi異常處理的基本原則和方法
一 異常的 在 delphi 的應用程式中,下列的情況都比較有可能產生異常。1 檔案處理 2 記憶體分配 3 windows資源 4 執行時建立物件和窗體 5 硬體和作業系統衝突 二 異常的處理。1 try except end 在 try體內的 發生異常時,系統將轉向 except 部分進行異常的...
超越基本原則
techtarget中國 techtarget中國原創 因為持續要求減少it成本,dba們不能再被看作是主要的成本負擔。相反,dba們必須努力於被公司認可和證明他們的價值。本篇文章將集中講述兩方面內容 你作為乙個dba需要具有的技術 硬 技能和非技術 軟 技能。我還會提供建議關於怎樣同管理層打交道和...