Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

¸ÄÔìDelphiµÄTStringHash³É±È½ÏͨÓõĹþÏ£±í

ÓÐʱºòÎÒÃÇÐèÒª¿ÉÒÔ¸ßËÙ¼ìË÷µÄÁÐ±í£¬×ÔÈ»»áÏëµ½¹þÏ£±í£¬Æ½Ê±ÎÒÃÇ¿ÉÄÜÏëµ½ÓÃIniFilesµ¥ÔªÀïµÄTHashedStringList£¬µ« THashedStringListÿ´ÎÐÂÔöÒ»¸öItemºó¶¼ÐèҪˢÐÂÒ»±é£¬Êý¾Ý¶àÁË¿ÉÄÜ»áÓеãÂý£¬¸Ð¾õ²»Ì«ºÃ£¬¶øTStringHashÔòÖ»ÄÜ´æ IntegerÐ͵Ä(ËäÈ»ÎÒÃÇ¿ÉÒ԰ѱðµÄ¶«Î÷Ç¿ÖÆ×ª³ÉÕûÐÍ´æ½øÈ¥£¬µ«¸Ð¾õ²»Ì«ºÃ)¡£TStringHashÒѾ­ÊµÏÖÁ˹þÏ£±íµÄÈ«²¿¹¦ÄÜ£¬ÎÒÃÇÖ»ÐèÒª¸ÄһϠ¾Í¿ÉÒÔΪ×Ô¼ºËùÓÃÁË¡£
ÎÒÖ÷Òª×öÁËÏÂÃæÒ»Ð©Ð޸ģº
1.ΪÄܸüͨÓÃһЩ£¬°Ñ´æ´¢µÄÖµ¸ÄΪPointerÀàÐÍ;
2.ÐÂÔöÁËFindKey·½·¨ÓÃÓÚÅжϱíÖÐÊÇ·ñ´æÔÚij¸öKeyÁË;
3.ÐÂÔöÁËStartEnumºÍEnumValue·½·¨£¬ÓÃÓÚ±éÀúÕû¸ö¹þÏ£±í£¬±ÈÈ磺
var aItem:TIntfItem;
begin
FList.StartEnum;
while FList.EnumValue(Pointer(aItem)) do
begin
      if aItem.Lifecycle=ilSys then
      aItem.Free;
end;
end;
4.ÐÂÔöÁËOnDeletionʼþ£¬¹¦ÄܺÍTtreeViewµÄOnDeletionÒ»Ñù£¬É¾³ýItemʱ´¥·¢£¬¿ÉÒÔÔÚÕâÀïÊÍ·ÅЩ¶«Î÷£¬±ÈÈ磺
procedure TIntfFactory.OnDeletion(var Value: Pointer);
begin
if assigned(Value) then
begin
    TIntfItem(Value).Free;
    Value:=nil;
end;
end;
ÏÂÃæÊÇÐ޸ĺóµÄ´úÂ룺
unit HashList;
interface
Type
PPHashItem = ^PHashItem;
PHashItem = ^THashItem;
THashItem = record
    Next: PHashItem;
    Key: string;
    Value: Pointer;
end;
TDeletionEvent=Procedure(var Value:Pointer) of Object;
THashList = class
private
    FEnumIndex:Cardinal;
    FCurrItem:PHashItem;
    Buckets: array of PHashItem;
    FOnDeletion: TDeletionEvent;
    procedure DoDeletion(var Value:Pointer);
protected
    function Find(const Key: string): PPHashItem;
    function HashOf(const Key: string): Cardinal; virtual;
public
    constructor Create(Size: Cardinal = 256);
    destructor Destroy; override;
    procedure Add(const Key: string; Value: Pointer);
    procedure Clear;
   


Ïà¹ØÎĵµ£º

delphiÈçºÎÓñ£´æÊý¾Ý¿âÁ¬½Ó²ÎÊý£¨INIƪ£©

ÔÚÉè¼ÆÊý¾Ý¿âÓ¦ÓóÌÐòµÄʱºò£¬¾­³£ÐèÒª½«Ò»Ð©ÐÅÏ¢´Ó³ÌÐòÖжÀÁ¢³öÀ´£¬ÒÔ±£Ö¤³ÌÐòµÄ¿ÉÒÆÖ²ÐÔ¡£ÆäÖÐ×îÖØÒªµÄÐÅÏ¢¾ÍÊÇÊý¾Ý¿âµÄÁ¬½Ó²ÎÊý¡£
ÔÚDelphiÖУ¬»ñµÃÕýÈ·µÄÊý¾Ý¿âÁ¬½Ó²ÎÊýµÄ·½·¨Ê®·Ö¼òµ¥£¬ÄãÖ»ÐèÒª½¨Á¢Ò»¸öÊý¾ÝÄ£¿é£¬ÔÚÆäÖÐÌí¼ÓÒ»¸öADO Connection,Ë«»÷Ö®£¬È»ºóÔÚµ¯³öµÄ´°¿ÚÖÐÑ¡“Use Connection String”£¬µ¥ ......

ÔÚDelphiÖÐÈçºÎʹÓÃRCÎļþÖеÄ×Ö·û´®±í

Ê×ÏÈÓÃNotepad»òResource workshop 4.5½¨Á¢RCÎļþ¡£ ½á¹¹ÈçÏ /****************************************************************************
rcdemo.rc
produced by Borland Resource Workshop
*****************************************************************************/
# ......

ÔÚdelphi 7ÖÐʵÏÖ»ñÈ¡ºº×ÖÆ´ÒôÊ××Öĸ

     ¹«Ë¾µÄ²ÍÒûϵͳ³öÆ·µÄÖú¼ÇÂ룬»¹Ã»ÊµÏÖ×Ô¶¯´Ó³öÆ·Ãû³Æ»ñÈ¡ºº×ÖÆ´ÒôÊ××Öĸ¡£
   ËùÒÔÔÚÍøÉÏÕÒÁËÈýÖÖ½â¾ö·½·¨£¬
    Ò»ÖÖÊÇkaguo µÄʹÓó£Óúº×ÖÆ´Òô²éÕÒ·½·¨£¬ÕâÖÖ´úÂëÊ®·Ö¼òµ¥£¬ÊµÏÖ·½±ã£¬µ«ÊÇÕâÖÖ´úÂë½ö½öÊÇÒ»¼¶×ֿ⣬ֻ֧³ÖÈýǧÁ㼸¸ö×ֵġ£
//»ñÈ¡ÖÐÎÄ×Ö´®µÄÉùĸµ ......

Delphi½â¾öË¢ÐÂÉÁ˸¡¢Í¼Æ¬ÎÄ×Ö͸Ã÷¡¢±¨¸æÄÚ´æÐ¹Â¶¡­¡­

1.·ÀֹˢÐÂʱÉÁ˸µÄÖÕ¼«½â¾ö°ì·¨
{ ·ÀֹˢÐÂʱÉÁ˸µÄÖÕ¼«½â¾ö°ì·¨(¶Ô¸¶Ë«»º³åÎÞЧʱ) }
  Perform($000B, 0, 0); //ËøÆÁÄ»  ·ÀÖ¹ÉÁ˸
  // ×öһЩ»á·¢ÉúÑÏÖØÉÁ˸µÄÊÂÇé..
  //½âËøÆÁÄ»²¢ÖØ»­
  Perform($000B, 1, 0);
& ......

delphi ½«ºº×Ö·­Òë³ÉÆ´ÒôËõдµÄº¯Êý½éÉÜ

unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
 &n ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ