delphi virtual dynamic
dynamic¾ÍÊÇËüÊǶ¯Ì¬·½·¨£¬Ã»Óо²Ì¬µØÖ·£¬ËùÒÔËÙ¶ÈÂýÒ»µã
virtualÊÇÐé·½·¨£¬Èç¹ûÔÚ»ùÀàÖв»ÉùÃ÷³ÉÐé·½·¨µÄ»°£¬¼Ì³Ðºó£¬¸Ã·½·¨»áÌáʾһ¾¯¸æÐÅÏ¢£¬°Ñ»ùÀàÖз½·¨ÆÁ±ÎµôÁË
---------------------------------------------------------------
¶¯Ì¬£¨Dynamic£©ºÍÐéÄ⣨Virtual£©ºó¶¼¿ÉÒÔʹÓÃOverride¹Ø¼ü×ÖÔÚÅÉÉúÀàÖжԶÔÓ¦·½·¨½øÐи²¸Ç´Ó¶øÊµÏÖ¶à̬......
ÐéÄâ·½·¨ºÍ¶¯Ì¬·½·¨ÔÚÓïÒåÉÏ¿ÉÒÔ˵Êǵȼ۵ģ¬ËûÃÇΨһµÄÇø±ðÔÚÓÚ¶Ô·½·¨µ÷ÓòßÂÔµÄÄÚ²¿ÊµÏÖÉÏ£ºÐéÄâ·½·¨´ÓËÙ¶È×îÓÅ»¯µÄ½Ç¶ÈʵÏÖ´úÂëÓÅ»¯£¬¶ø¶¯Ì¬·½·¨ÔòÊÇ´Ó¿Õ¼ä×îÓŵĽǶÈʵÏÖ´úÂëÓÅ»¯......
±»¸²¸ÇµÄ¶¯Ì¬·½·¨ÔÚÅÉÉúÀàµÄVMTÖв»ÔÙ³öÏÖ........ËùÒÔ½ÚÊ¡¿Õ¼ä........µ«²éѯËÙ¶ÈÂý
±»¸²¸ÇµÄÐéÄâ·½·¨ÔÚÅÂÉúÀàµÄVMTÖÐÔٴγöÏÖ........ËùÒÔ²éѯËÙ¶È¿ì......µ«À˷ѿռä
---------------------------------------------------------------
ÐéÄâ·½·¨ºÍ¶¯Ì¬·½·¨
Ҫʹһ¸ö·½·¨³ÉΪÐéÄâµÄ»ò¶¯Ì¬µÄ£¬ÐèÒªÔÚÆäÉùÃ÷ÖаüÀ¨Ö¸Ê¾×Övirtual»òdynamic¡£ÐéÄâ·½·¨ºÍ¶¯Ì¬·½·¨²»Í¬ÓÚ¾²Ì¬·½·¨£¬ËüÃÇ¿ÉÒÔÔÚÆäºóÒáÀàÖб»¸²¸Ç£¨overridden£©¡£µ±Ò»¸ö¸²¸Ç·½·¨±»µ÷ÓÃʱ£¬·½·¨µ÷ÓÃÖÐʹÓõÄÀà»ò¶ÔÏóµÄʵ¼Ê£¨ÔËÐÐʱ£©ÀàÐ;ö¶¨ÁËÄÄÒ»¸öʵÏÖÊÇÓÐЧµÄ£¬¶ø·Ç±äÁ¿ÉùÃ÷µÄÀàÐ;ö¶¨¡£
Òª¸²¸ÇÒ»¸ö·½·¨£¬ÐèÒªÔÚÔÙÉùÃ÷ÖÐʹÓÃָʾ×Öoverride¡£Ò»¸öoverrideÉùÃ÷±ØÐèÓëÆä׿ÏÈÉùÃ÷ÔÚ²ÎÊý˳ÐòºÍÀàÐÍÒÔ¼°½á¹û£¨Èç¹ûÓУ©µÈ¸÷·½ÃæÆ¥Åä¡£
ÏÂÃæµÄÀý×ÓÖУ¬TFigureÖÐÉùÃ÷µÄDraw·½·¨ÔÚÁ½¸öºóÒáÀàÖж¼±»¸²¸Ç¡£
type
TFigure = class
procedure Draw; virtual;
end;
TRectangle = class(TFigure)
procedure Draw; override;
end;
TEllipse = class(TFigure)
procedure Draw; override;
end;
¶ÔÓÚÉÏÃæ¸ø³öµÄÉùÃ÷£¬ÏÂÃæµÄ´úÂë¾ÙÀý˵Ã÷ÁËÔÚÔËÐÐʱͨ¹ýÒ»¸ö±äÁ¿µ÷ÓÃÐéÄâ·½·¨Ê±£¬ÆäÀàÐͱ仯µÄЧ¹û¡£
var
Figure: TFigure;
begin
Figure := TRectangle.Create;
Figure.Draw; //µ÷ÓõÄÊÇTRectangle.Draw
Figure.Destroy;
Figure := TEllipse.Create;
Figure.Draw; //µ÷ÓõÄÊÇTEllipse.Draw
Figure.Destroy;
end;
Ö»ÓÐÐéÄâ·½·¨ºÍ¶¯Ì¬·½·¨¿ÉÒÔ±»¸²¸Ç¡£È»¶ø£¬ËùÓеķ½·¨¶¼¿ÉÒÔ±»ÖØÔØ£¨overloaded£©£¬¼ûÖØÔØ·½·¨¡£
ÐéÄâºÍ¶¯Ì
Ïà¹ØÎĵµ£º
×î½üÃæÊÔÁËÒ»¼ÒÆóÒµ,ÏÂÃæÓÐÒ»µÀ´ÓÀ´Ã»ÓÐÏë¹ýµÄÎÊÌâ,µ±Ê±ÓÐ˼·,²»¹ýд²»³öÀ´.»ØÀ´ºó,µ÷ÊÔÁËÒ»ÏÂ,·¢ÏÖ»¹ÊÇÓÐÄѶȵÄ,дÉÏÀ´¿´´ó¼ÒÊÇ·ñ»¹ÓиüÓÅ»¯µÄд·¨,»¶ÓÌÖÂÛ:
ÏÂÃæÊµÏÖ½«×Ö·û´®"10ad200d3" ÖеÄÊý×ֺϼÆ,10+200+3=213
var s1:string;
var i:integer;
var n1:integer;
var tem1: string;
var tem2:integer;
......
ÎÒÔÚÎÄÕ¡¶DelphiͼÏñ´¦Àí -- ͼÏñ¾í»ý¼°¸ß˹ģºý¡·ÖУ¬½éÉÜÁËÀûÓÃͨÓõÄͼÏñ¾í»ý¹ý³Ì¶ÔͼÏñ½øÐиß˹ģºý´¦Àí£¬Æä´¦ÀíЧ¹û»¹²»´í£¬´¦ÀíСÐÍͼÏñʱ¸Ð¾õÒ²»¹ÐУ¬µ«ÊÇ´¦Àí½Ï´óͼÏñʱµÄËÙ¶È»¹ÊÇÏÓÂý£¬ÔÚÎÒµÄP4 2.8G¡¢1GÄÚ´æµÄ»úÆ÷É϶ÔǧÍòÏñËØÍ¼Ïñ½øÐÐQ=3£¬R=5µÄ¸ß˹ģºý´¦Àí£¬²»°üÀ¨Í¼Ïñ×°ÔØºÍǰÆÚÊý ......
{-----------------------------------------------------------------------------
Unit Name: HashTable
Author: LiuHeng
Date: 2010-04-13
Purpose: ·â×°DelphiµÄHashTable
History:
------------------------------- ......