Ë˵DelphiûÓйþÏ£
Ë˵DelphiûÓйþÏ££¿££DelphiÖУ¬TStringListºÍTHashedStringListµÄÐÔÄܶԱÈ
Ôø¾¿´µ½ºÜ¶àÈËÔÚÈÂÈÂDelphiûÓйþÏ£±í£¬ÕâЩÈ˵͝ÊÖÒâʶ¹ÃÇÒ²»ÂÛ£¬È´»¹ÓкܶàÈËÒÔ´ËÀ´Ö¤Ã÷Delphi±È±ðµÄÓïÑÔÀ¬»ø£¬ÊµÔÚÊÇ...
ºÃ£¬ÀÎɧ´òס£¬×ª½ÓÕýÌâ¡£
TStringListÊÇÎÒÃdz£ÓõÄ×Ö·û´®ÁбíÀàÐÍ£¬Ó÷¨¾Í²»ÔÚÕâÀï׸Êö£¬µ«ÊÇ£¬ÔÚÊý¾ÝÆäÏîÊýÔö¶àʱ£¬ÆäËÑË÷£¨Ö÷ÒªÊÇname/keyËÑË÷ºÍindexofËÑË÷£©ÐÔÄܻἱ¾çϽµ£¬ÔÒòÊÇTStringListµÄÄÚ²¿´æ´¢Ê¹ÓÃÁËÁ´±íÐÎʽ£¬¶øËÑË÷²Ù×÷ʹÓÃÁËÑ»·±éÀú·½Ê½¡£
ÖµµÃ¸ßÐ˵ÄÊÇ£¬ÔÚiniFilesµ¥Ôª£¬DelphiΪÎÒÃÇÌṩÁËTHashedStringListÀàÐÍ£¬¼´£¬¾¹ý¹þÏ£´¦ÀíµÄTStringList£¬Ëü¼Ì³Ð×ÔTStringList£¬Ö»ÊǶÔËÑË÷·½·¨½øÐÐÁËÓÅ»¯£¬Òò´Ë£¬ÎÒÃÇÍêÈ«¿ÉÒÔ·ÅÐĵÄÔÚ´óÁ¿×Ö·û´®ËÑË÷µÄʱºòʹÓÃËüÀ´´úÌæTStringList£¬¶øÐèÒª¸Ä±äµÄÖ»ÊÇÔÚ:=µÄºóÃæÓÃTHashedStringList.createÀ´´úÌæTStringList.create£¬µ«ÆäËÙ¶ÈÈ´Ìá¸ßÁËÒ»¸öÊýÁ¿¼¶¡£
ΪÁËÏÔʾÁ½Õß¼äÐÔÄܵIJî¾à£¬ÎÒдÁ˼¸¸ö¼òµ¥µÄÓï¾äÀ´²âÊÔËûÃǸ÷×ÔµÄÌØÐÔ¡£
unit ufrmMainForm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, StrUtils,IniFiles;
type
TForm1 = class(TForm)
btn1: TButton;
mmo1: TMemo;
procedure btn1Click(Sender: TObject);
private
...{ Private declarations }
public
procedure testTHashStringList;
procedure testTStringList;
...{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses DateUtils;
...{$R *.dfm}
procedure TForm1.btn1Click(Sender: TObject);
begin
testTStringList;
mmo1.Lines.Add('--------------------');
testTHashStringList;
end;
procedure TForm1.testTHashStringList;
var
hsl: THashedStrin
Ïà¹ØÎĵµ£º
ÔÚÖ÷½çÃæµÄimplementation {$R *.dfm} Ï·ÅÈëÒÔÏ´úÂ룺
procedure PatchInt3;
var
NOP: Byte;
NTDLL: THandle;
BytesWritten: DWORD;
Address: Pointer;
begin
if Win32Platform <> VER_PLATFORM_WIN32_NT then
Exit;
NTDLL := GetModuleHandle('NTDLL.DLL');
if NT ......
DECLARE
TYPE TY_QUECUR IS REF CURSOR;
CUR_COLUMNS TY_QUECUR;
SQLCMD VARCHAR(500);
TABNAME VARCHAR(20);
COLNAME VARCHAR(50);
COLTYPE VARCHAR(20);
COLCOMMENT VARCHAR2(50);
COLLENGTH INTEGER;
COLPRECISION INTEGER; ......
¸ñʽ£º²Ù×÷Êý Shl/Shr ÒÆ¶¯Î»Êý
˵Ã÷£º²Ù×÷ÊýÓë·µ»ØÖµ¶¼ÊÇÕûÊý
Àý×Ó£º16(10) = 10000(2)
16(10) Shr 1 = 10000(2) Shr 1 = 1000(2) = 8(10)
16(10) Shr 2 = 10000(2) Shr 2 = 100(2) = 4(10)
˵Ã÷£ºÒ»¸öÕûÊý(I)°´Î»×óÒÆÒ»Î»£¬Ï൱ÓÚ°ÑËü³ËÒÔ2£¬¼´ I * 2
&n ......
Ãû³Æ ÀàÐÍ ËµÃ÷
abort º¯Êý ÒýÆð·ÅÆúµÄÒâÍâ´¦Àí
abs º¯Êý ¾ø¶ÔÖµº¯Êý
addexitproc º¯Êý ½«Ò»¹ý³ÌÌí¼Óµ½ÔËÐÐʱ¿âµÄ½áÊø¹ý³Ì±íÖÐ
addr º¯Êý ·µ»ØÖ¸¶¨¶ÔÏóµÄµØÖ·
adjustlinebreaks º¯Êý ½«¸ø¶¨×Ö·û´®µÄÐзָô·ûµ÷ÕûΪcr/lfÐòÁÐ
align ÊôÐÔ Ê¹¿Ø¼þλÓÚ´°¿Úij²¿·Ö
alignment ÊôÐÔ ¿ ......
URL: http://edn.embarcadero.com/article/27568
Abstract: Delphi 6 introduces support for COM+ object pooling, which can provide significant performance improvements under some circumstances. We take a look at Delphi 6s object pooling support. By Vincent Parrett.
Typically, when a client appl ......