Delphi Copyº¯ÊýЧÂʵÄÎÊÌâ
¼¼Êõ½»Á÷,DH½²½â. ×î½üºÍ·ÊÄñ½»Á÷ÁËϹØÓÚ×Ö·û´®·½ÃæµÄ֪ʶ,¶øÕâÆªÎÄÕÂÊǺܾÃÒÔǰдµÄ,ÏÖÔÚ·¢³öÀ´°É. ÎÒÃÇдÁ½¶Î´úÂëÀ´¶Ô±ÈÏÂ:
µÚÒ»¸öÓÃCopyº¯Êý:
procedure TForm1.Button1Click(Sender: TObject);
var
a,c:Cardinal;
n:Integer;
D:Double;
i:Integer;
b:string;
begin
c:=0;
for n:=0 to 99 do
begin
a:=GetTickCount;
for i:=0 to 999999 do
begin
b:=Copy(s,1,20);
end;
a:=GetTickCount-a;
C:=C+A;
end;
D:=C/100;
Label1.Caption:=FloatToStr(D);
end;
µÚ¶þ¸öÓÃMoveMemoryº¯Êý:
procedure TForm1.Button2Click(Sender: TObject);
var
a,c:Cardinal;
n:Integer;
d:Double;
i:Integer;
b:string;
begin
c:=0;
for n:=0 to 99 do
begin
a:=GetTickCount;
for i:=0 to 999999 do
begin
SetLength(b,20);
MoveMemory(@b[1],@s[1],20);
end;
a:=GetTickCount-a;
C:=C+A;
end;
D:=C/100;
Label2.Caption:=FloatToStr(D);
end;
ÆäÖÐ:
procedure TForm1.FormCreate(Sender: TObject);
begin
s:='HuangJackyJackyHuang';
end;
¿´ÏÂʵÑéÊý¾Ý:
1ÓÃÁË 264
2ÓÃÁË 169
µ±È»ÕâÊÇÔÚÔËÐÐÁË9999900´Î²Å¿´³öÀ´µÄ,Èç¹ûÎÒÃǰÑs¸³Öµ³ÉÒ»¸öºÜ³¤µÄ×Ö·û´®¿´¿´
µ±×Ö·û´®sÓÐ100¸ö×Ö·û,Copy 100¸ö:
1ÓÃÁË266
2ÓÃÁË181
¼ÌÐø SÓÐ200¸ö×Ö·û,Copy 200¸öµÄÇé¿ö
1 244
2 186
¿ÉÒÔ¿´³öÀ´ÔÚ¶Ì×Ö·û´®µÄÇé¿öÏÂMoveMemory¿Ï¶¨Òª¿ìһЩ,ºóÃæ×Ö·û´®Ôö³¤CopyЧÂÊûÓÐϽµ,
µ«ÊÇSetLength + MoveMemory¾ÍϽµÁË
×îºósÓÐ400¸ö×Ö·ûCopy 400¸ö,µ«ÊÇÎÒ°ÑSetLength·ÅÔÚÑ»·ÍâÃæÁË,Ò²¾ÍÊÇÖ»SetLengthÒ»´Î,Ò²¾ÍÖ»±È½ÏCopyºÍMoveMemoryÕâÁ½¸öÁË.
1 216
2 89
¹þ¹þ½ñÌì»»ÔŲ́ʽ»úÁË,ËùÒÔ2¸öÔËÐÐʱ¼ä¶¼¼õÉÙÁ˺ܶà.
ÔÙ²âÊÔÏÂSetLengthÔÚÑ»·ÌåÀïÃæµÄÇé¿ö ÓÃÁË147.
ÕâÏÂ×ÓÎÒÃÇ¿ÉÒÔ¿´³öÀ´Ò»¸öSetLengthºÄÁ˶àÉÙ×ÊÔ´.
OK,ÎÒÃÇ¿´¼ûÁËÕâ¸ö½á¹û,¿ÉÊÇΪʲô»áÕâÑùÄØ?ÓÐÅóÓÑÏëÁ˽âûÓÐ?
ÒªÁ˽â¾ÍÒªÉîÈ뺯ÊýÄÚ²¿È¥:
ÎÒÃÇÏÈ¿´1µÄÇé¿ö:
Unit1.p
Ïà¹ØÎĵµ£º
Delphi×Ö·û´®¡¢PCharÓë×Ö·ûÊý×éÖ®¼äµÄת»»
ÉèÓÐÒÔÏÂÈý¸ö±äÁ¿£º
var
s:string;
p:pchar;
a:array[1..20] of char;
ÄÇôÈýÕßÖ®¼äµÄת»»ÈçÏ£º
1¡¢×Ö·û´®µ½PChar
p:=PChar(s);
2¡¢PCharµ½×Ö·û´®
s:=p;
3¡¢PCharµ½×Ö·ûÊý×é
StrCopy(@a,p);
4¡¢×Ö·ûÊý×éµ ......
Delphi ÊÇÐÂÒ»´ú¿ÉÊÓ»¯¿ª·¢¹¤¾ß£¬Ëü¾ßÓй¦ÄÜÇ¿´ó¡¢¼ò±ãÒ×ÓúʹúÂëÖ´ÐÐËÙ¶È¿ìµÈÌØµã£¬ÊÇÈ«Çò¹«ÈϵĿìËÙÓ¦Óÿª·¢¹¤¾ß¼¼ÊõµÄÏÈÇýÕߣ¬ËüÔ½À´Ô½ÔÚ¹¹¼ÜÆóÒµÐÅϢϵͳ·½Ãæ·¢»Ó×ÅÖØÒª×÷Óá£ÓÉÓÚDelphi ÕâЩÏÔÖøÌØµã£¬Ðí¶à³ÌÐòԱѡÔñDelphi×÷Ϊ¿ª·¢¹¤¾ß±àÖÆ¸÷ÖÖÓ¦ÓóÌÐò¡£µ«ÊÇ£¬ÁîÈËÍïϧµÄÊÇDelphiûÓÐ×Ô´ø´®¿Ú ......
ÆÁÄ»µÄ·Ö±æÂÊÓÃÕâ¸ö
x=GetSystemMetrics(SM_CXSCREEN)
y=GetSystemMetrics(SM_CYSCREEN)
ͬÉÏ¡£
.¶øÇÒ»ñµÃÆÁÄ»ÉϵÄÏñËØºÃÏñÓ¦¸ÃʹÓÃ
screen.pixelsperinchº¯Êý
int GetDeviceCaps(
  ......
Day ¿ªÍ·µÄº¯Êý
¡ñ
Unit
DateUtils
function DateOf(const Avalue: TDateTime): TDateTime;
ÃèÊö
ʹÓà DateOf º¯ÊýÓÃÀ´°ÑÒ»¸ö TDateTime ÀàÐ͵ıäÁ¿×ª±ä³ÉÒ»¸ö
Ö»´øÓÐÈÕÆÚµÄ TDateTime ÀàÐͱäÁ¿¡£
ÀýÈ磺
showmessage(DateTimetostr(dateof(now())));
ÄãµÃµ½µÄÊÇ 2003/03/19
¶ø showmessage(DateTime ......
Ãû³Æ ¡¡ ÀàÐÍ ¡¡¡¡¡¡ËµÃ÷
--------------------------------------------------------- ......