tbass = class
procedure alert; virtual;
end;
tchild1 = class(tbass)
procedure alert; override;
end;
過載就是在不改變繼承過來的方法的基礎上重新新增乙個方法名字一樣,但引數或返回值是不一樣的。
tbass = class
procedure proc; virtual;
function fun(x,y: integer): string;
end;
tchild4 = class(tbass)
procedure proc(astring:string); overload;//同名不同參的函式
end;
類的建構函式
constructor tseekmarkshape.create;
begin
inherited;//先構造父類
markimage := nil;
end;
類的析構函式
destructor tseekmarkshape.destroy;
begin
freeandnil(markimage);//先析構自己
inherited;
end;
class function 不需要例項化就可以使用
無任何修飾符時,是形參傳遞,函式中會建立乙份新的引數。大資料引數時,不建議這樣傳遞引數
var 是位址傳遞,會修改原有的變數
out傳遞給過程的實際引數不必進行初始化,out也可以認為是位址傳遞
const修飾的引數傳入之後不允許修改,如果在過程中修改引數會報錯
詳細可參考
delphi中var關鍵字
首先簡短說明在delphi中var的作用。var關鍵字在delphi 中是再普通不過的乙個關鍵字,大家都知道它的作用就是說明其後定義的是變數,區域性變數不能在定義是賦初值,全域性變數可以設初值。技術手冊中如是 描述 全域性變數會被初始化,如integer型會被初始化為0 字串為空,物件為nil。但是...
new關鍵字 this關鍵字 base關鍵字
使用new,所做的三件事 1.類是引用物件,引用物件是在堆中開闢空間 在堆中開闢空間 2.在開闢的堆空間中建立物件 3.呼叫物件的構建函式 4.隱藏父類成員 子類的成員可以與隱藏從父類繼承的成員,類似於重寫。public new void sayhello this關鍵字的使用 1.代表當前類的物件...
c const關鍵字 總結
在全域性作用於里定義非const變數時,在整個程式中都可以訪問.除非特別說明,在全域性作用於的宣告的const變數時定義該物件的檔案的區域性變數.死變數只存在與那個檔案中,不能被其他檔案訪問.非const變數預設為extern.要使const變數能夠在其他地方的檔案中訪問,必須顯示指定為extern...