PASCAL ¾«Òª |
µÚʮһÕ ³ÌÐòºÍµ¥Ôª |
Delphi Ó¦ÓóÌÐòÖеĵ¥Ôª£¬»ò˵³ÌÐòÄ£¿é¿ÉνÀϵÀ¾«Éʵ¼ÊÉÏ£¬µ¥ÔªÊdzÌÐòÄ£¿é»¯µÄ»ù´¡£¬ÀàÊǼÌËüÖ®ºó²ÅÓеġ£ÔÚDelphi Ó¦ÓóÌÐòÖУ¬Ã¿¸ö´°Ì嶼ÓÐÒ»¸öÏà¶ÔÓ¦µÄµ¥Ôª¡£ÓÃÏàÓ¦µÄ¹¤¾ß°´Å¥, »òFile > New Form ²Ëµ¥ÃüÁÔÚ¹¤³ÌÖÐÌí¼ÓÒ»¸öд°Ì壬ʵ¼ÊÉÏÊÇÔö¼ÓÁËÒ»¸öе¥Ôª£¬Ò²¾ÍÊǽ¨Á¢Á˸Ãд°ÌåµÄÀà¡£
µ¥ÔªËäÈ»ËùÓд°Ì嶼ÔÚµ¥ÔªÖж¨Ò壬µ«·´Ö®Ôò²»È»¡£³ý´°ÌåÍ⣬µ¥ÔªÖл¹¿ÉÒÔ¶¨ÒåһϵÁÐÄÜ·ÃÎʵÄÀý³Ì¡£Ñ¡ÔñFile > New²Ëµ¥ÃüÁȻºóÔÚObject RepositoryµÄNew Ò³ÖÐÑ¡ÔñUnit ͼ±ê£¬Ëæ¼´µ±Ç°¹¤³ÌÖоͻá¼ÓÈëÒ»¸ö¿Õ°×µ¥Ôª¡£µ¥Ôª´úÂë·ÖÇø´æ·Å£¬¿Õ°×µ¥ÔªµÄ´úÂëÈçÏ£º
unit Unit1; interface implementation end.
µ¥ÔªµÄ¸ÅÄî±È½Ï¼òµ¥£¬µ¥ÔªÃûÓëÎļþÃûÏàͬ£¬¶øÇÒ±ØÐëΨһ¡£µ¥Ôª°üÀ¨½çÃæÇø£¨interface£©¼°ÊµÏÖÇø(implementation)£¬½çÃæÇøÓÃÓÚÉùÃ÷ÆäËüµ¥ÔªÄÜ¿´µ½µÄ²¿·Ö£»ÊµÏÖÇø´æ·Å½çÃæµÄʵÏÖ´úÂë¼°Íⲿ²»¿É¼ûµÄÉùÃ÷¡£´ËÍ⻹ÓÐÁ½¸ö¿ÉÑ¡µÄÇø£¬¼´³õʼ»¯Çø¼°½áÊøÇø£¬ÆäÖгõʼ»¯Çø´æ·Å³õʼ»¯´úÂ룬µ±³ÌÐò¼ÓÔص½ÄÚ´æʱִÐУ»½áÊøÇø´æ·Å³ÌÐòÖÕֹʱִÐеĴúÂë¡£
µ¥Ôª×ÜÌå½á¹¹ÈçÏ£º
unit unitName; interface // other units we need to refer to uses A, B, C; // exported type definition type newType = TypeDefinition; // exported constants const Zero = 0; // global variables var Total: Integer; // list of exported functions and procedures procedure MyProc; implementation uses D, E; // hidden global variable var PartialTotal: Integer; // all the exported functions must be coded procedure MyProc; begin // ... code of procedure MyProc end; initialization // optional initialization part finalization // optional clean-up code end.
½çÃæÇøÍ·²¿µÄuses×Ó¾ä±íʾÐèÒª·ÃÎʵÄÍⲿµ¥Ôª£¬ÕâЩÍⲿµ¥ÔªÖж¨ÒåÁËÄãÐèÒªÒýÓõÄÊý¾ÝÀàÐÍ£¬Èç×Ô¶¨Òå´°ÌåÄÚËùÓõĿؼþ¡£
ʵÏÖÇøÍ·²¿µÄuses×Ó¾äÓÃÓÚ±íʾֻÔÚʵÏÖ²¿·Ö·ÃÎʵĵ¥Ôª¡£Èç¹ûÀý³Ì»ò·½·¨µÄ´úÂëÐèÒªÒýÓÃÆäËûµ¥Ôª£¬ÄãÓ¦¸Ã°ÑÕâЩµ¥Ôª¼Óµ½ÊµÏÖÇø×Ó¾äÖУ¬¶ø²»ÊǽçÃæÇø¡£ÄãËùÒýÓõĵ¥Ôª±ØÐëÔÚ¹¤³ÌÎļþĿ¼ÖÐÄÜÕÒµ½£¬»òÔÚ¹¤³ÌÑ¡Ïî¶Ô»°¿òµÄ Directories/Conditionals Ò³É趨ÕâЩµ¥ÔªµÄËÑË÷·¾¶¡£
C++³ÌÐòÔ±Ó¦¸ÃÖªµÀusesÓï¾äºÍinclude Ö¸ÁîÊDz»Í¬µÄ¡£usesÓï¾äÖ»ÊÇÓÃÓÚÊäÈëÒýÓõ¥ÔªµÄÔ¤±àÒë½çÃ沿·Ö£¬ÒýÓõ¥ÔªµÄʵÏÖ²¿·ÖÔÚµ¥Ôª±àÒëʱ²Å¿¼ÂÇ¡£ÄãÒýÓõĵ¥Ôª¿ÉÒÔÊÇÔ´´úÂë¸ñʽ£¨PAS£©£¬Ò²¿ÉÒÔÊDZàÒë¸ñʽ£¨DCU£©£¬µ«ÊDZØÐëÓÃͬһ°æ±¾µÄDelphi½øÐбàÒë¡£
ÔÚµ¥ÔªµÄ½çÃæÇøÖпÉÒÔÉùÃ÷Ðí¶à²»Í¬µÄÔªËØ£¬°üÀ¨¹ý³Ì¡¢º¯Êý¡¢È«³Ì±äÁ¿¼°Êý¾ÝÀàÐÍ¡£ÔÚDelphi Ó¦ÓóÌÐòÖУ¬Êý¾ÝÀàÐÍ¿ÉÄÜÓõÃ×îƵ·±¡£Ã¿´´½¨Ò»¸ö´°Ì壬Delphi »áÔÚµ¥ÔªÖÐ×Ô¶¯½¨Á¢Ò»¸öеÄÊý¾ÝÀàÐÍ--Àà(class)¡£ÔÚDelphi µ¥ÔªÖв»½öÄܶ¨Òå´°Ì壻»¹ÄÜÏó´«Í³µ¥ÔªÒ»Ñù£¬Ö»°üº¬¹ý³Ì¼°º¯Êý£»»¹¿ÉÒÔ¶¨ÒåÓë´°ÌåºÍÈκοÉÊӿؼþÎ޹صÄÀà¡£
µ¥ÔªµÄ¹¤×÷¿Õ¼äPascalµ¥ÔªÊÇ·â×°ÐԺͿÉÊÓÐԵĹؼü£¬ËüºÜ¿ÉÄܱÈÀàÖÐµÄ private ºÍ public ¹Ø¼ü×Ö»¹ÒªÖØÒª¡£(ʵ¼ÊÉÏ£¬private¹Ø¼ü×ÖÓëÀ൥ԪµÄ¹¤×÷¿Õ¼äÓйØ)¡£Ò»¸ö±êʶ·û£¨ÈçÒ»¸ö±äÁ¿¡¢¹ý³Ì¡¢º¯Êý»òÊý¾ÝÀàÐÍ£©µÄ¹¤×÷¿Õ¼äÊÇÖ¸ÄÜ·ÃÎʱêʶ·ûµÄ´úÂë¶Î¡£»ù±¾ÔÔòÊÇ:±êʶ·ûÔÚËü¹¤×÷¿Õ¼äÄÚ²ÅÓÐÒâÒ壬Ҳ¾ÍÊÇ˵£¬Ö»ÔÚÆäÉùÃ÷µÄ´úÂë¿éÖвÅÓÐÒâÒ壬ÔÚ¹¤×÷¿Õ¼äÍâÄã²»ÄÜ·ÃÎÊÕâЩ±êʶ·û¡£ÀýÈ磺
Ö»Òª³ÌÐòµ¥ÔªµÄuses×Ó¾äÖÐÁгöijһµ¥ÔªÃû£¬ÄÇôËùÁе¥Ôª½çÃæÇøÖÐÉùÃ÷µÄÈκαêʶ·û¸Ã³ÌÐò¶¼ÄÜ·ÃÎÊ¡£´°ÌåÀàµÄ±äÁ¿¾ÍÊÇÕâÑùÉùÃ÷µÄ£¬ËùÒÔÄã¿ÉÒÔÔÚÆäËû´°Ìå´úÂëÖзÃÎÊÕâ¸ö´°ÌåÒÔ¼°ËüµÄ¹«¹²Óò¡¢·½·¨¡¢ÊôÐÔºÍ×é¼þ¡£µ±È»°Ñʲô¶¼ÉùÃ÷Ϊȫ¾Ö±êʶÕâÖÖ±à³ÌÏ°¹ß²¢²»ºÃ¡£³ýÁËÃ÷ÏÔµÄÄÚ´æÏûºÄÎÊÌâÍ⣬ʹÓÃÈ«³Ì±äÁ¿Ê¹´úÂëά»¤ºÍ¸üбäµÃÀ§ÄÑ¡£Ò»¾ä»°£¬ÄãÓ¦¸Ã¾¡Á¿ÉÙÓÃÈ«³Ì±äÁ¿¡£
µ¥ÔªÓÃ×÷ÃüÃû¿Õ¼äuses Óï¾äÊÇ·ÃÎÊÆäËûµ¥Ôª¹¤×÷¿Õ¼äµÄ±ê×¼¼¼Êõ£¬Í¨¹ý¸ÃÓï¾äÄãÄÜ·ÃÎÊÆäËüµ¥ÔªµÄ¶¨ÒåÄÚÈÝ¡£Èç¹ûÇ¡ÇÉÁ½¸öµ¥ÔªÉùÃ÷µÄ±êʶ·ûͬÃû£¬Ò²¾ÍÊÇ˵Äã¿ÉÄÜÓÐÁ½¸öͬÃûµÄÀà»òÀý³Ì£¬Óöµ½ÕâÖÖÇé¿ö£¬Äã¿ÉÒÔÓõ¥ÔªÃû×÷ǰ׺¶¨ÒåÀàÐÍ»ò¹ý³ÌÃû£¬Óɴ˽øÐÐÇø·Ö¡£ÀýÈçÓÃTotals.ComputeTotal·ÃÎÊTotals µ¥ÔªÖеÄComputeTotal ¹ý³Ì¡£²»¹ýÕâÖÖÇé¿ö×îºÃ²»Òª¾³£Óöµ½£¬Òò´ËÇ¿ÁÒ½¨Òé²»ÒªÔÚͬһ³ÌÐòÖÐÓÃͬһÃû×Ö±íʾÁ½¸ö²»Í¬µÄ¶«Î÷¡£
È»¶ø£¬Èç¹û²éÔÄVCL¿âºÍWindows Îļþ£¬Äã»á·¢ÏÖһЩDelphi º¯ÊýºÍDelphi ¿ÉÓõÄWindows API º¯ÊýͬÃû£¬²»¹ý²ÎÊýÍùÍù²»Í¬£¬ÏÂÃæÒÔBeep ¹ý³ÌΪÀý˵Ã÷Õâ¸öÎÊÌâ¡£
н¨Ò»¸öDelphi ³ÌÐò£¬Ìí¼ÓÒ»¸ö°´Å¥£¬È»ºóдÈëÒÔÏ´úÂ룺
procedure TForm1.Button1Click(Sender: TObject); begin Beep; end;
Ö´ÐгÌÐò£¬µ¥»÷°´Å¥£¬Äã»áÌýµ½Ò»¸ö¶Ì´ÙµÄÉùÒô¡£ÏÖÔÚÒƵ½µ¥ÔªµÄusesÓï¾ä£¬°ÑÔÏȵĴúÂ룺
uses Windows, Messages, SysUtils, Classes, ...
¸ÄΪÏÂÃæµÄÑùʽ£¬Ö»Òª°ÑSysUtilsµ¥ÔªÒƵ½Windows֮ǰ£º
uses SysUtils, Windows, Messages, Classes, ...
ÏÖÔÚÈç¹ûÖØбàÒëÕâ¶Î´úÂ룬Äã»áµÃµ½Ò»¸ö±àÒë´íÎ󣺡±Not enough actual parameters¡±£¨Êµ¼Ê²ÎÊý²»¹»£©¡£ÎÊÌâÔÚÓÚWindows µ¥Ôª¶¨ÒåÁËÁíÒ»¸ö´øÁ½¸ö²ÎÊýµÄBeep º¯Êý¡£Ó¦¸Ã˵uses×Ó¾äÖеÚÒ»¸öµ¥ÔªµÄ¶¨Òå±»ºóÃæµ¥ÔªµÄ¶¨Ò帲¸Ç£¬½â¾ö·½·¨ºÜ¼òµ¥£º
procedure TForm1.Button1Click(Sender: TObject); begin SysUtils.Beep; end;
²»¹Üuses×Ó¾äÖе¥ÔªË³ÐòÈçºÎÅÅÁУ¬ÒÔÉÏ´úÂ붼ÄܱàÒëͨ¹ý¡£ÔÚDelphiÖкÜÉÙÓÐÆäËûÃüÃû³åÍ»µÄÇé¿ö£¬ÒòΪDelphi ´úÂëͨ³£·ÅÔÚÀàµÄ·½·¨ÖУ¬Èç¹û²»Í¬ÀàÖÐÓÐÁ½¸öͬÃûµÄ·½·¨²»»á²úÉúÈκγåÍ»£¬Ö»ÊÇʹÓÃÈ«³ÌÀý³Ì»á²úÉú³åÍ»ÎÊÌâ¡£
µ¥ÔªºÍ³ÌÐòDelphi Ó¦ÓóÌÐòÔ´´úÂëÎļþ¿É·Ö³ÉÁ½À࣬ËüÃÇÊÇÒ»¸ö»ò¶à¸öµ¥ÔªÎļþ¼°Ò»¸ö³ÌÐòÎļþ£¬µ¥ÔªÎļþ¿ÉÒÔ¿´³ÉÊÇ´ÎÒ»¼¶µÄÎļþ£¬Ëü±»Ó¦ÓóÌÐòµÄÖ÷Ì塪¡ª³ÌÐòÎļþ¡ª¡ªÒýÓá£ÀíÂÛÉÏÈç´Ë£¬Êµ¼ÊÉϳÌÐòÎļþͨ³£ÊÇ×Ô¶¯²úÉúµÄ£¬×÷ÓÃÓÐÏÞ£¬³ÌÐòÆô¶¯²¢ÔËÐÐÖ÷´°Ìåʱ²Å»áÓõ½Ëü¡£³ÌÐòÎļþµÄ´úÂ룬»ò˵Delphi ¹¤³ÌÎļþ£¨DPR£©£¬¿ÉÓÃÊÖ¹¤½øÐб༣¬Ò²¿Éͨ¹ý¹¤³Ì¹ÜÀíÆ÷¼°ÆäÓëÓ¦ÓóÌÐò¡¢´°ÌåÏà¹ØµÄÑ¡Ïî½øÐб༡£
³ÌÐòÎļþµÄ½á¹¹Í¨³£±Èµ¥ÔªÎļþµÄ½á¹¹¼òµ¥µÃ¶à¡£ÏÂÃæÊÇÒ»¸ö³ÌÐòÎļþµÄÔ´´úÂ룺
program Project1; uses Forms, Unit1 in Unit1.PAS’ {Form1DateForm}; begin Application.Initialize; Application.CreateForm (TForm1, Form1); Application.Run; end.
´ÓÉϿɼû£¬ÎļþÖÐÖ»ÓÐÒ»¸öusesÇøºÍÓ¦ÓóÌÐòµÄÖ÷Ìå´úÂ룬Ö÷Ìå´úÂë°üº¬ÔÚbegin ºÍ end ¹Ø¼ü×ÖÖ®¼ä¡£³ÌÐòµÄuses×Ó¾äÌرðÖØÒª£¬ÒòΪÐèҪͨ¹ýËüÀ´¹ÜÀíÓ¦ÓóÌÐòµÄ±àÒëºÍÁ¬½Ó¡£
½áÊøÓïÌÖÂÛÍêDelphiÖÐPascal Ó¦ÓóÌÐòµÄ½á¹¹£¬±¾Êé¾Í·¹ýÁË×îºóÒ»Õ£¬ÖÁÉÙÄ¿Ç°ÊÇÕâÑù£¬»¶ÓÀ´email·¢±íÄãµÄÒâ¼ûºÍÒªÇó¡£
Èç¹ûÏë½øÒ»²½Ñ§Ï°Delphi Object PascalÖÐÃæÏò¶ÔÏóµÄÄÚÈÝ£¬Äã¿ÉÒԲο¼ÎÒÒѳö°æµÄÊ顶¾«Í¨Delphi 5¡·£¨Mastering Delphi 5 £¬Sybex,1999£©£¬ÏêϸÇé¿ö¿É·ÃÎÊÍøÖ·www.marcocanto.com£¬ÄãÒ²¿ÉÒÔ´Ó¸ÃÍøÖ·ÉÏÏÂÔر¾ÊéµÄ×îа汾¡£
© Copyright Marco Cantù, Wintech Italia Srl 1995-2000