Microsoft® Visual Basic® Scripting Edition
Function ³¯­z¦¡
 µ{¦¡»y¨¥°Ñ¦Ò 
  | Version 1 

½Ð°Ñ¾\


»¡©ú
«Å§i Function µ{§Çªº¦WºÙ¡B¤Þ¼Æ¤Îµ{¦¡½X¡C
»yªk
[Public | Private] Function name [(arglist)]
    [statements]
    [name = expression]
    [Exit Function]
    [statements]
    [name = expression]
End Function

Function ³¯­z¦¡ªº»yªk¨ã¦³¥H¤U´X­Ó³¡¤À¡G

²Õ¦¨³¡¤À »¡©ú
Public ªí¥Ü¥ô¦ó¼Ò²Õ¤¤ªº©Ò¦³¨ä¥¦µ{§Ç³£¥i©I¥s³o­Ó Function µ{§Ç¡C
Private ªí¥Ü³o­Ó Function µ{§Ç¥u¯à³Q¦b«Å§i¥¦¤§¼Ò²Õùتºµ{§Ç©Ò¨Ï¥Î¡C
name Function ªº¦WºÙ¡A¿í´`¼Ð·ÇÅܼƩR¦W³W®æ¡C
arglist ÅܼƲM³æ¡Aªí¥Ü©I¥s Function µ{§Ç®É©Ò¶Ç°eªº¤Þ¼Æ¡CÅܼƥH³r¸¹¹j¶}¡C
statements ¦¹ Function µ{§Ç©Ò°õ¦æ¤@¸sªº³¯­z¦¡¡C
expression ¦¹ Function ªº¶Ç¦^­È¡C

arglist ¤Þ¼Æ¦³¤U¦C»yªk©M³¡¤À¡G

[ByVal | ByRef] varname[( )]

²Õ¦¨³¡¤À »¡©ú
ByVal ªí¥Ü¥H¶Ç­Èªº¤è¦¡¶Ç»¼¤Þ¼Æ¡C
ByRef ªí¥Ü¥H¶Ç§}ªº¤è¦¡¶Ç»¼¤Þ¼Æ¡C
varname ¥Nªí¤Þ¼ÆªºÅܼƦWºÙ¡A¿í´`¼Ð·ÇÅܼƩR¦W³W®æ¡C

µù¸Ñ
Function µ{§Ç­YµL©ú½T¦a«ü©w¬° Public ©Î Private¡A«h¹w³]¬° Public¡C³oªí¥Ü³o¨Ç Function ¥i³Q±zµ{¦¡½X¤¤¨ä¥Lªºµ{§Ç©Ò¨Ï¥Î¡C¦ý¦bµ{§Ç¶¡©I¥s Function¡A¨ä¤¤ªº°Ï°ìÅܼƭȱN¤£³Q«O¯d¡C

©Ò¦³ªº¥i°õ¦æµ{¦¡½X³£¥²¶·¦bµ{§Ç¤¤¡A¥B¤£¥i¥H¦b Function¡BSub µ{§ÇùØ©w¸q¨ä¥¦ªºFunction µ{§Ç¡C

Exit Function ³¯­z¦¡·|¨Ï Function µ{§Ç¥ß§Y°±¤î¡Aµ{¦¡·|±q©I¥s¸Ó Function µ{§Çªº¤U¤@¦æ³¯­z¦¡Ä~Äò°õ¦æ¡CExit Function ³¯­z¦¡¥i¦b Function µ{§Ç¥ô¦ó¦ì¸m¥X²{¡A¥B¤£­­¦¸¼Æ¡C

¦p¦P Sub µ{§Ç¡AFunction µ{§Ç¬O¥i±µ¨ü¤Þ¼Æ¡B°õ¦æ¤@¦ê³¯­z¦¡¨Ã¥B§ïÅܨä¤Þ¼Æ­Èªº¿W¥ßµ{§Ç¡CµM¦Ó¡A»P Sub µ{§Ç¤£¦Pªº¬O¡A·í±z·Q¹B¥Î Function ªº¶Ç¦^­È®É¡AFunction µ{§Ç¥i¥H©ñ¦b¹Bºâ¦¡ªº¥k¤è¡A´N¦p¦P¨Ï¥Î¤º«Ø¨ç¼Æ¤@¼Ë¡A¨Ò¦p Sqr¡BCos¡B©Î Chr¡C

¹Bºâ¦¡¤¤¥u­n¨Ï¥Î¨ç¼Æ¦WºÙ¡A±µµÛ¥H¬A¸¹¬A°_¨Óªº¤Þ¼Æ¦C¡A´N¥i¥H©I¥s Function µ{§Ç¡C½Ð°Ñ¦Ò Call ³¯­z¦¡¥H±oª¾Ãö©ó¦p¦ó©I¥s Function µ{§Çªº¯S©w¸ê°T¡C

ª`·N  Function µ{§Ç¥i»¼°j¡A¤]´N¬O¥¦­Ì¥i¥H©I¥s¦Û¤v¡CµM¦Ó¡A»¼°j¥i¯à·|³y¦¨°ïÅ|·¸¦ì¡C

­Y­n±q¨ç¼Æ¤¤¶Ç¦^­È¡A¶·«ü©w¸Ó­Èµ¹¨ç¼Æ¦WºÙ¡C³oºØ«ü©w¦¡¥i¥X²{©óµ{§Ç¤¤ªº¥ô¦ó¦ì¸m¡A¥B¤£­­¦¸¼Æ¡C¦pªG¨S¦³«ü©w­Èµ¹ name¡A«hµ{§Ç·|¶Ç¦^¹w³]­È¡G¼Æ­È¨ç¼Æ¶Ç¦^ 0¡A¦r¦ê¨ç¼Æ¶Ç¦^¹sªø«×¦r¦ê¡]""¡^¡C­Y¶Ç¦^«¬ºA¬°ª«¥ó©Ò¤Þ¥Î¡A¥B Function ùبS¦³«ü©wª«¥ó¤Þ¥Îµ¹ name¡]¨Ï¥Î Set¡^¡A«h¨ç¼Æ·|¶Ç¦^ Nothing¡C

¤U¦C½d¨Òªí¥Ü¦p¦ó«ü©w¶Ç¦^­Èµ¹¤@­Ó¦WºÙ¥s§@ BinarySearch ªº¨ç¼Æ¡C¦b¦¹½d¨Ò¤¤¡A«ü©w False µ¹¦WºÙ¥Hªí¥Ü¦³¨Ç­È§ä¤£¨ì¡C


Function BinarySearch(. . .)
    . . .
    ' §ä¤£¨ì¦¹­È¡A¶Ç¦^ False ­È¡C
    If lower > upper Then
        BinarySearch = False  
        Exit Function 
    End If
    . . .
End Function
¦b Function µ{§Ç¤¤¨Ï¥ÎªºÅܼƦ³¨âÃþ¡G¨º¨Ç¦bµ{§Ç¤¤©ú½T«Å§iªº¡A¥H¤Î¤£¬O¦¹Ãþªº¡C¦bµ{§Ç¤¤©ú½T¦a«Å§iªºÅܼơ]¨Ï¥Î Dim ©Î¦PÃþ¦r¡^¡A¥²¬°°Ï°ìÅܼơCµ{§Ç¤¤¦³¨Ï¥Î¨ì¡A¦ý¥¼¦bµ{§Ç¤¤«Å§iªºÅܼƤ]¬O°Ï°ìªº¡A°£«D¦¹ÅܼƤw¦bµ{§Ç¥~§ó°ª¼h¦¸¤¤³Q«Å§i¡C

ª`·N  µ{§Ç¥i¨Ï¥Î¤£¬O¦b¸Óµ{§Ç¤¤«Å§i¹LªºÅܼơA¦ý¬O­Y¦b Script ¼h¦¸©w¸q¬Û¦Pªº¦WºÙ¡A´N·|µo¥Í¦WºÙ¤Wªº½Ä¬ð¡C¦pªGµ{§ÇùؤޥΤF¥¼«Å§iªºÅܼơA¦Ó¦¹Åܼƪº¦WºÙ©M¨ä¥¦µ{§Ç¡B±`¼Æ¡B©ÎÅܼƪº¦WºÙ¬Û¦P¡A«h·|»{©wµ{§Ç¬O¤Þ¥Î Script ¼h¦¸ªº¦WºÙ¡C©Ò¥H¡A½Ð©ú½T¦a«Å§iÅܼƥHÁקK¦¹ºØ½Ä¬ð¡C¥i¨Ï¥Î Option Explicit ³¯­z¦¡¨Ó±j­¢Åܼƪº«Å§i¡C


ª`·N  VBScript ¥i¯à¬°¤F¤º³¡ªº®Ä²v¦Ó­«·s±Æ¦Cºâ³N¹Bºâ¦¡¡C­Y Function µ{§Ç·|§ïÅܦP¤@¹Bºâ¦¡¤¤ªºÅܼƭȡA½ÐÁקK¦b¦¹ª¬ªp¤U¨Ï¥Î¡C