一般情況下, 類都會定義在 interface 區; 在 implementation 區定義的類 只能本單元使用.unit Unit1;interfaceu
//要點6: Result 可以參與運算, 函數名不可以function MyFun(x,y: Integer): Integer;begin Result
//要點11: 參數可以分為: 默認參數(傳值)、var(傳址)、out(輸出)、const(常數)四 類{默認參數是傳值, 不會被改變}function M
//要點13: 需要給其他單元調用, 必須在 interface 聲明, 但必須在 uses 區後面unit Unit1;interfaceuses Win
//要點15: 調用其他單元的函數//包含函數的單元:unit Unit2;interfacefunction MyFun(x,y: Integer): In
//要點18: 如果函數在接口區定義了, 就無需用 forward 提前聲明了unit Unit1;interfaceuses Windows, Messa
{測試}procedure TForm1.Button1Click(Sender: TObject);var i,x: Integer;begin i :
簡單示例//所謂遞歸函數, 就是自己調用自己的函數, 先來個簡單的例子:{遞 歸調用的簡單示例}procedure alert(i: Integer = 1)
深入方法[29] - 傳址參數不能賦予常量{給這個函數可以賦常數變量}function Fun1(x,y: Integer): Integer;begin
//方法重定義時, 避免編譯提示的辦法{辦法1: 使用 reintroduce 指示字}TBass = class procedure Proc; virtu
[5] - 靜態方法、類方法、靜態類方法//靜態方法是默認的, 如果不是虛方法或純虛方法, 那它就是一個靜態方法.//類方法就是通過類名就可以訪問的方法uni
[6] - 類中的方法重載//類中的方法重載首先具備前面說過的重載相關的所有特點, 如:TMyClass = class(TObject) function
{使用起來沒看出區別!}[9] - 不能被覆蓋的方法與不能被繼承的類{ 抽象類是一定要被繼承才可以使用的; 抽象方法是一定要被覆蓋才可以使用的. 現在說的
{從道理上來講, 這會隱藏或替換了父類的 Create ; 但實際上沒有, 編譯器 肯定要做一個幕後工作!}//再如:TMyClass = class(TOb
{測試結果: 只執行了消息方法, 沒有執行事件, 也就是事件被消息攔截了}//可以並存嗎? 當然可以!{把消息的實現改為:}procedure TForm1.
該程序利用DriveCommboBox控件來獲得系統具有的驅動器,並以此作為目錄樹的最上層,利用FileListBox控件,通過設置其Filetype屬性為f