1. 程式人生 > >第4章 初始化和結束化過程

第4章 初始化和結束化過程

  每一個程式碼塊都具有一個BEGIN和一個END,儘管在BASM中用ASM關鍵字代替了BEGIN,但它仍然起著相同的作用。
  有些情況下,BEGIN和END只決定一個語法結構的開始和結束,例如記錄和物件型別定義中使用的BEGIN和END。但更多的時候(例如例程定義中),BEGIN與END代表初始化與結束化過程。這一切都是編譯器完成的,大多數情況下都是不可見的。
  Delphi中加入了initialization和finalization關鍵字來定義單元的初始化和結束化節。可以用begin或asm關鍵字替代initialization—一惟一的影響是:不能再定義finalization節。
  Delphi會為每個單元加入一個initialization節,即使沒有顯式定義。
  專案檔案(.DPR)沒有initialization 與finalization節,它的begin..end代表了模組的載入與解除安裝過程、包的專案檔案(.DP)不能定義begin..end塊,它的end關鍵字指向的過程同時擔任了載入和解除安裝過程兩種角色。
  本小節講述BEGIN、END、initialization和 finalization 背後所隱含的所有程式碼。你將看到System.pas與編譯器如何協調地管理你的每一個單元、例程與程式碼塊。