Delphi ¹Ø¼ü×ÖÏê½â[ÕûÀíÓÚ "³È×Ó" µÄÌû×Ó]
Delphi ¹Ø¼ü×ÖÏê½â[ÕûÀíÓÚ "³È×Ó" µÄÌû×Ó]
absolute
//ËüʹµÃÄãÄܹ»´´½¨Ò»¸öбäÁ¿, ²¢ÇҸñäÁ¿µÄÆðʼµØÖ·ÓëÁíÒ»¸ö±äÁ¿Ïàͬ.
var
Str: string[32];
StrLen: Byte absolute Str;
//Õâ¸öÉùÃ÷Ö¸¶¨Á˱äÁ¿StrLenÆðʼµØÖ·ÓëStrÏàͬ.
//ÓÉÓÚ×Ö·û´®µÄµÚ0¸öλÖñ£´æÁË×Ö·û´®µÄ³¤¶È, ËùÒÔStrLenµÄÖµ¼´×Ö·û´®³¤¶È.
begin
Str := 'abc';
Edit1.Text := IntToStr(StrLen);
end;
abstract
//ËüÔÊÐíÄã´´½¨³éÏóµÄ·½·¨, °üÀ¨ÓгéÏó·½·¨µÄÀà³ÆÎª³éÏóÀà.
//Abstract¹Ø¼ü×Ö±ØÐëÓëVirtual»òDynamic¹Ø¼ü×ÖͬʱʹÓÃ, ÒòΪ³éÏó·½·¨±ØÐë±»¸²¸ÇʽʵÏÖ.
//³éÏóÀ಻ÄÜʵÀý»¯, ³éÏó·½·¨²»Äܰüº¬·½·¨Ìå.
type
TDemo = class
private
protected
procedure X; virtual; abstract;
public
constructor Create;
destructor Destroy; override;
published
end;
and
//Ò»¡¢±íʾÂß¼Óë
if (a>0) and (b>0) then
//¶þ¡¢±íʾλÔËËã
var
a,b,c: Integer;
begin
c := (a and b);
end;
//ʹÓÃAnd±íʾÂ߼ʱ, And×óÓҵıí´ïʽ±ØÐëÓÃСÀ¨ºÅÀ¨Æð, ÒÔ±ÜÃâÒÔÉúÌõ¼þµÄ³åÍ».
//ÀýÈç:
if a>0 and b>0 then
//±àÒëÆ÷¿ÉÄÜ»áÀí½âΪ:
if a>(0 and b)>0 then
//»ò:
if (a>0) and (b>0) then
//µ«ÊÇʵ¼Ê±àÒëʱ, ±àÒëÆ÷»á²úÉúÒ»¸ö³åÍ», ±¨¸æ´íÎó.
//²¢ÇÒµÚÒ»ÖÖ¿ÉÄܰüº¬ÁËa>b>cµÄÐÎʽ, ÕâÔÚDelphiÖв»±»Ö§³Ö.
//ËùÒÔʹÓÃAndÔËËã·ûʱ±ØÐëʹÓÃÀ¨ºÅ, ÒÔÇø·Ö×óÓÒµÄÌõ¼þ.
//±íʾλÔËËãʱҲ±ØÐë¼ÓÉÏÀ¨ºÅ, ½«AndÒÔ¼°×óÓÒ²ÎÊýÀ¨Æð.
array
//ArrayÓÃÓÚ±íʾÊý×é, ÈκεĶÔÏó¶¼Äܱ»ÉùÃ÷³ÉÊý×é.Êý×é·ÖΪ¾²Ì¬ºÍ¶¯Ì¬µÄ£²ÖÖ.
//¾²Ì¬Êý×é
var
Arr1: array [1..10] of Integer;
//¶¯Ì¬Êý×é, ÓÉÓÚÉùÃ÷ʱ²»ÖªÆäÔªËØ¸öÊý, ËùÒÔ±ØÐëÔÚºóÆÚÓÃSetLength·½·¨ÉèÖÃÊý×éµÄ´óС
var
Arr2: array of Integer;
//Êý×é×÷Ϊ²ÎÊýʱ, ²»ÄÜ´«ÈëÊý×éµÄ´óС, Ö»ÄÜ´«ÈëÊý×éÃû, È»ºóÓÃLength·½·¨»ñÈ¡Êý×éµÄÔªËØ¸öÊý
function X(A: array of Integer): Integer;
var
i: Integer;
begin
Result := 0;
for i := 0 to Length(A)-1 do
Result := Result + A[i];
end;
as
//AsÓÃÓÚ½«Ò»¸ö¶ÔÏóת»»ÎªÁíÒ»¸ö¶ÔÏó
procedure BtnClick(Sender:TObject);
begin
(Sender as TButton).Caption := 'Clicked';
end;
//¶ÔÓÚ¶ÔÏóÌî³ä½Ó¿ÚµÄת»», ±ØÐëÓÃAs½øÐÐ
(HTTPRIO as IExp).GetConnection;
/
Ïà¹ØÎĵµ£º
¶ÔÏó¿Õ¼ä
ÄÚ´æ½á¹¹
¶ÔÏóµÄÄÚ´æ½á¹¹Êǹ̶¨µÄ£¬¶ÔÏó´´½¨Íê³Éºó¾ÍÎÞ·¨¸Ä±ä¡£ËüÖ÷Òª´æ´¢Á˶ÔÏóÖ±ÊôÀàµÄµØÖ·£¨µÈ¼ÛÓÚÀàµÄVMT£©£¬¶ÔÏó±¾ÉíµÄ³ÉÔ±Êý¾Ý£¬¶ÔÏóµÄ½Ó¿Ú·½·¨±íµØÖ·¡£½á¹¹ÈçͼËùʾ£º
˵Ã÷£ºÈôÀàδÉùÃ÷½Ó¿Ú£¬Ôò¶ÔÏó¿Õ¼ä²»´æ´¢½Ó¿Ú·½·¨±íµØÖ·¡£
Àà¿Õ¼äÓë¶ÔÏó¿Õ¼äµÄ¹ØÏµ
Àà¿Õ¼äÓë¶ÔÏó¿Õ¼ä£º
ʾÀý£º·ÖÎö¶ÔÏóµÄ» ......
*ÀàµÄ¹«¿ªÊôÐÔ£¨´úÂ룩
ʾÀý£º·ÃÎÊÀàµÄpublishedÊôÐÔ
˵Ã÷£ºvmtFieldTable£¨Published Field±í£©Ö¸ÏòPublished Field±íÓÐÐòÅÅÁУ¬Ö»´æ´¢µ±Ç°ÀàµÄPublishedField±í£¬µÃµ½¸¸ÀàµÄPublished Field±íÐèÒªÍùÉϱéÀú¡£
×¢Ò⣺ֻÓÐÀàÐÍÊÇÀà»ò½Ó¿ÚµÄÊý¾Ý³ÉÔ±²Å¿É¶¨ÒåΪpublishedµÄ·ÃÎʼ¶±ð
´úÂ룺
type
TMyO ......
֮ǰ×öÒ»¸ö³ÌÐò£¬ÓÃListBox¶ÁÈëÒ»¸öÎı¾Îļþ£¬µ«Îı¾ÖÐÓпÕÐУ¬ÎªÁËɾ³ýÆäÖеĿÕÐУ¬ÕÛÌÚÁ˺ó¤Ê±¼ä¡£
Ïȸø³öÒ»¶Î´úÂë¸ø´ó¼Ò¿´
var
i:Integer;
begin
ListBox1.Items.LoadfromFile('data.txt');
for i:=0 to ListBox1.Count - 1 do
begin
  ......
DelphiÖÐ Roundº¯ÊýÓиöBug
Ò»µ©²ÎÊýÊÇÐÎÈç XXX.5ÕâÑùµÄÊýʱ
Èç¹û XXX ÊÇÆæÊý ÄÇô¾Í»á Round up
Èç¹û XXX ÊÇżÊý ÄÇô¾Í»á Round down
ÀýÈç Round(17.5)=18
µ«ÊÇ Round(12.5)=12
ÏÂÃæµÄº¯Êý¼´¿É¾ÀÕýÕâ¸ö Bug µ«ÊÇÊÇÁÙʱÐÔµÄ
Ö´ÐÐ DoRound(12.5) ½á¹ûΪ 13 ÕýÈ·
function DoRound(Value: Extended): Int64;
......
DELPHI²ÎÊý¼¸¸ö¸ÅÄîÉϵÄÇø±ð ÊÕ²Ø
ÒýÓòÎÊý£º
ÒýÓòÎÊýÓÃvar¹Ø¼ü×Ö±êʾ
procedure DoubleTheValue (var Value: Integer);
begin
Value := Value * 2;
end;ÔÚÕâÖÖÇé¿öÏ£¬²ÎÊý¼È°ÑÒ»¸öÖµ´«µÝ¸ø¹ý³Ì£¬ÓÖ°ÑÐÂÖµ·µ»Ø¸øµ÷Óùý³ÌµÄ´úÂë¡£µ±ÄãÖ´ÐÐÍêÒÔÏ´úÂëʱ£º
var
X: Integer;
begin
X : ......