delphi概念性學習(二)

2021-07-11 18:14:07 字數 1716 閱讀 8920

工程檔案結構與語法

乙個完整的delphi程式是由多個unit模組組成,這些模組被乙個單一的原始檔--工程檔案所聯絡。不同於傳統的pascal程式,delphi中的程式的主模組的源檔案格式為.dpr,其他模組的格式為.pas。乙個完整的程式 = 乙個.dpr檔案 + 0或者多個.pas檔案。

乙個.dpr檔案的組成部分為:程式頭、【uses從句】、主程式塊。(另外,在ide中,乙個工程中往往需要用到命名空間的限定語句。)乙個典型的工程檔案如下:

program project1;

uses sysutils;

begin

end.

那對應c++也是不是由相同的格式呢?

program project1

inclue int main(arg,arv)

貌似基本上是一樣的,只不過風格有點區別!

the program heading 程式頭語句指示所編寫的程式的名稱。形式為:project程式名;在rad中,此名稱在任何時候均與.dpr檔名相同。良好的程式中,.dpr中的**應該盡量的少,盡量將**分與.pas中然後在.dpr中呼叫。

c++中program的作用主要防止***.h頭重複引用。

uses從句和inclue的作用相同預編譯塊。

delphi的形式是 uses name1,name2,。。。;

主程式塊和main操作基本相同

乙個在begin和end中間操作,乙個在{}中間操作。不過一些變數定義可能位置不太相同。具體看後面會解釋。

單檔案結構

程式的每個子模組稱之為乙個單元。單元中可包含任何元素包括型別、變數、常量、例程等。每個單元均儲存於乙個.pas檔案中。乙個檔案只能應對乙個單元。

對應於c++中.h和.cpp。只不過delphi是在.pas中實現所有操作。

.pas檔案結構如下:

unit unit1;//單元名稱

inte***ce //inte***ce部分起始處

type

uses

implementation

uses

initialization

。。。。。。

finalization

。。。。。。

end//單元檔案結尾

unit1名稱和.pas檔案的名稱也一致。注意乙個.dpr中不能引用兩個名稱相同的.pas。

inte***ce和c++中.h標頭檔案一樣各種定義都在這部分新增。

對應的implementation就是對應宣告裡面的各種實現。

initialization和finalization這連個部分是可選的,這兩個部分乙個做的是初始化乙個做的是結束**。有點像construction和destruction。

uses從句:

uses從句可以出現於三個場合:

.dpr檔案中工程名稱的後面

.pas檔案中inte***ce部分,必須緊跟於關鍵字inte***ce

.pas檔案implementation關鍵字之後

system與sysinit單元被預設引用,如果不是本目錄下的工程或者其他專案的.pas要引用可以使用in,但是要說明一下再.dpr中可以使用in限定原始檔會被認為是工程的一部分。不會影響編譯,但是影響ide對工程的管理。在.pas中不能使用in,這意味著此型別檔案中引用的所有單元的原始檔均在當前目錄或者搜尋路徑職中。

CSS概念性筆記

選擇符 1 id選擇符 2 類選擇符 3 標籤選擇符 4 相鄰兄弟選擇符 h1 p 5 子元素選擇符 e1 e2 6 後代選擇符 包含選擇符 e1 e2 自我理解 後代和子元素選擇符區別 前者可以寫多個層數,後者只能是父 子。7 萬用字元 8 屬性選擇符 e1 attr e1 attr value ...

Socket 通訊的概念性過程

1.socket 通訊tcp方式一般流程圖 服務端 客戶端 socket socket setsockopt bind connect listen recv send write accept recv send read setsockopt的可用level為sol socket option為...

scala spray 概念性內容的總結

spray 是基於 akka 的輕量級 scala 庫,可用於編寫 rest api 服務。了解 spray 的 dsl 後可以在很短的時間內寫出乙個 rest api 服務,它的部署並不需要 tomcat apche 等容器,可以直接 run。對於每乙個 route,spray 都會 sprawn...