資源描述:
《object pascal精華內(nèi)容》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、objectpascal精華內(nèi)容1.程序組織程序通常分成若干稱為單元的源代碼模塊。每個程序都有首部并以首部開始,首部確定了程序名。跟隨首部之后的是可選的uses子句,然后是聲明塊和語句。uses子句列出連接到程序的所有單元;這些單元可以被為其他程序所用,通常還包括單元中uses子句列出的單元。uses子句向編譯器提供模塊之間的相關(guān)信息。由于這些信息存儲在模塊自身內(nèi)部,因此ObjectPascal程序不需要程序描述文件(makefile)、頭文件(headerfile)或含有編譯指示的預(yù)處理程序(preprocessor)。項目管理器(ProjectManager)每次載
2、入一個工程(project)到集成開發(fā)環(huán)境(IDE)中時都會產(chǎn)生一個相應(yīng)的程序描述文件,但只在項目組(projectgroup)中含有多于一個工程時才會保存這些程序描述文件。----------------------------------------------編者注在Delphi中,程序可以理解為一個工程文件(.dpr)和若干單元文件(.pas)的有機(jī)組合。工程文件和單元文件都需要引用若干由Delphi提供的已經(jīng)編譯單元(.dcu),這些單元一般都顯式地在uses子句中列出,如Forms,Windows單元等,也有特殊的單元由編譯器隱式引用,如System單元。一
3、種極端情況是,程序只含有一個工程文件,在工程文件中實現(xiàn)預(yù)期功能,包括常量定義、變量聲明、過程和函數(shù)定義、程序的執(zhí)行語句等。對于功能簡單的情況來說,這樣的程序組織是可行的。而對于大多數(shù)的Windows應(yīng)用程序來說,這樣的結(jié)構(gòu)是不科學(xué)的,甚至可以說是效率低下的(這里的效率是指開發(fā)和維護(hù)效率,不是指編譯、建立或運行效率)。一般情況下,開發(fā)者完全可以不必對工程文件進(jìn)行代碼維護(hù),因為與此相關(guān)的大多數(shù)工作都已經(jīng)由Delphi自動完成。2.Pascal源文件編譯器在編譯程序時將希望找到以下三種Pascal源文件:·單元源文件(擴(kuò)展文件名為.pas)·工程文件(擴(kuò)展文件名為.dpr)·
4、包源文件(擴(kuò)展文件名為.dpk)其中,單元源文件包含了應(yīng)用程序的大不分代碼。每個應(yīng)用程序都有一個單獨的工程文件和幾個單元文件;工程文件相當(dāng)于傳統(tǒng)Pascal中的主程序,它將單元文件組織到應(yīng)用程序中。Borland開發(fā)工具為每個應(yīng)用程序自動管理工程文件。如果以命令行的方式編譯程序,那么可以將所有的源代碼置于單元(.pas)文件中。但如果要在集成開發(fā)環(huán)境中建立應(yīng)用程序,則必需有一個工程(.dpr)文件。包源文件與工程文件類似,只是包源文件用語構(gòu)造特殊稱為“包”的動態(tài)鏈接庫。--------------------------------------------編者注盡管編譯
5、器會根據(jù)uses子句查找相關(guān)單元相應(yīng)的.pas源文件,但這并不意味沒有相應(yīng)的.pas文件就無法成功編譯。事實上,如果沒有找到源文件,那么編譯器將會查找相應(yīng)的.dcu文件,這類文件是.pas源文件編譯生成的文件。在Delphi中,開發(fā)者需要大量使用VCL提供的資源,因此在uses子句中會有很多單元是Delphi預(yù)先提供的,在編譯時Delphi并不對這些單元進(jìn)行重新編譯,而是直接利用相應(yīng)的.dcu文件編譯生成最終的應(yīng)用程序。這些.dcu文件位于目錄“Lib”中。至于目錄“Sourcevcl”中的.pas文件,是提供調(diào)試和參考的,Delp
6、hi不會對這些源文件進(jìn)行編譯,除非開發(fā)者強制將其中某些被使用的單元放置在當(dāng)前工程所在的目錄中時(因此可以通過這樣的途徑修改VCL從而只影響當(dāng)前工程而不影響其它工程)。3.用于建立應(yīng)用程序的其他文件除源代碼模塊外,Borland產(chǎn)品還使用一些非Pascal文件建立應(yīng)用程序,這些文件會被自動保存,包括:·窗體文件,擴(kuò)展文件名為.dfm(Delphi)或.xfm(Kylix)·資源文件,擴(kuò)展文件名為.res·工程選項文件,擴(kuò)展文件名為.dof(Delphi)或.kof(Kylix)窗體文件可以是本文件,也可以是編譯過的資源文件,文件中可以含有位圖、字符串等。每個窗體文件代表一
7、個單獨的窗體。在應(yīng)用程序中,這些窗體相當(dāng)于窗口或?qū)υ捒?。集成開發(fā)環(huán)境允許開發(fā)者以文本的方式查看和編輯窗體文件,并以文本文件或二進(jìn)制文件的形式保存。每個工程至少有一個窗體,并且每個窗體都有一個.pas單元文件與之相關(guān)聯(lián),默認(rèn)情況下窗體文件與其相應(yīng)的.pas文件具有相同的主文件名。除了窗體文件之外,Delphi或Kylix會對每個工程用一個.res資源文件保存應(yīng)用程序的圖標(biāo)。默認(rèn)情況下該文件與其相應(yīng)的.dpr文件具有相同的主文件名。要改變應(yīng)用程序圖標(biāo),可以使用“ProjectOptions”對話框。工程選項(.dof或.kof)文件中含有編譯