|
|
|
|
²ÀÁö / 2001-05-09 / ¿ÀÈÄ 1:01:17 / 210.123.133.62
Á¶È¸¼ö : 159
|
[Áú¹®] call back, call name, call value, call reference¿¡ ´ëÇØ ¼³¸íºÎŹµå¸³´Ï´Ù. |
Microsoft¢ç Visual Basic¢ç Scripting Edition
Call ¹®
|
|
¼³¸í
Sub ÇÁ·Î½ÃÀú ¶Ç´Â Function ÇÁ·Î½ÃÀú¿¡ Á¦¾î¸¦ Àü¼ÛÇÕ´Ï´Ù.
±¸¹®
[Call] name [argumentlist]
Call¹®Àº ¾Æ·¡ ¿ä¼Ò·Î ±¸¼ºµË´Ï´Ù.
±¸¼º ¿ä¼Ò |
¼³¸í |
Call |
¼±ÅÃÀûÀÎ Å°¿öµå. ÁöÁ¤ÇÒ °æ¿ì argumentlist¸¦ °ýÈ£·Î ¹¾î¾ß ÇÕ´Ï´Ù. »ç¿ë ¿¹´Â ¾Æ·¡¿Í °°½À´Ï´Ù. Call MyProc(0) |
name |
ÇʼöÀûÀÎ ¿ä¼Ò. È£ÃâÇÒ ÇÁ·Î½ÃÀúÀÇ À̸§ÀÔ´Ï´Ù. |
argumentlist |
¼±ÅÃÀûÀÎ ¿ä¼Ò. ÇÁ·Î½ÃÀú¿¡ Àü´ÞÇÒ ½°Ç¥·Î ±¸ºÐÇÑ º¯¼ö, ¹è¿ ¶Ç´Â ½Ä ¸ñ·ÏÀÔ´Ï´Ù. |
Âü°í
ÇÁ·Î½ÃÀú¸¦ È£ÃâÇÒ ¶§¿¡´Â Call Å°¿öµå¸¦ »ç¿ëÇÒ ÇÊ¿ä°¡ ¾øÁö¸¸, Àμö°¡ ÇÊ¿äÇÑ ÇÁ·Î½ÃÀú¸¦ È£ÃâÇϱâ À§ÇØ Call Å°¿öµå¸¦ »ç¿ëÇÏ·Á¸é argumentlist¸¦ ¹´Â °ýÈ£·Î ¹¾î¾ß ÇÕ´Ï´Ù. ±×·¯³ª Call Å°¿öµå¸¦ »ý·«Çϸé argumentlist¸¦ ¹´Â °ýÈ£´Â »ý·«ÇØ¾ß ÇÕ´Ï´Ù. Call ±¸¹®À» »ç¿ëÇÏ¿© ³»ºÎ ÇÔ¼ö³ª »ç¿ëÀÚ Á¤ÀÇ ÇÔ¼ö¸¦ È£ÃâÇϸé, ±× ÇÔ¼öÀÇ °á°ú °ªÀ» Æó±âÇÕ´Ï´Ù.
Call MyFunction("¾È³çÇϽʴϱî?")
Function MyFunction(text)
MsgBox text
End Function
ÇÁ·Î½ÃÀúÀÇ Á¾·ù
VBScript ÇÁ·Î½ÃÀú¿¡´Â µÎ Á¾·ù, Áï Sub ÇÁ·Î½ÃÀú¿Í Function ÇÁ·Î½ÃÀú°¡ ÀÖ½À´Ï´Ù.
Sub ÇÁ·Î½ÃÀú
Sub ÇÁ·Î½ÃÀú´Â Sub ¹®°ú End Sub ¹®À¸·Î ¹¾îÁø ÀÏ·ÃÀÇ VBScript ¸í·É¹®À¸·Î µ¿ÀÛÀ» ¼öÇàÇÏÁö¸¸ ±× °ªÀ» ¹ÝȯÇÏÁö´Â ¾Ê½À´Ï´Ù. Sub ÇÁ·Î½ÃÀú¿¡¼´Â È£ÃâÇÏ´Â ÇÁ·Î½ÃÀú°¡ Àü´ÞÇÏ´Â »ó¼ö, º¯¼ö ¶Ç´Â ½ÄÀ¸·Î µÈ Àμö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Sub ÇÁ·Î½ÃÀú¿¡¼ Àμö°¡ ¾øÀ¸¸é ÇØ´ç Sub ¹®¿¡ ºó °ýÈ£()°¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù.
¾Æ·¡ Sub ÇÁ·Î½ÃÀú´Â ³»ºÎ(±âº»ÀûÀ¸·Î Á¦°øµÇ´Â) VBScript ÇÔ¼ö µÎ °³, Áï
B>MsgBox¿Í
B>InputBox¸¦ »ç¿ëÇÏ¿© »ç¿ëÀÚ¿¡°Ô Á¤º¸¸¦ ¾Ë·ÁÁÝ´Ï´Ù. ±×·± ´ÙÀ½ ÇØ´ç Á¤º¸¿¡ µû¸¥ °è»ê °á°ú¸¦ Ç¥½ÃÇÕ´Ï´Ù. VBScript¸¦ »ç¿ëÇÏ¿© ¸¸µç Function ÇÁ·Î½ÃÀú¿¡¼ °è»êÀÌ ¼öÇàµË´Ï´Ù. Function ÇÁ·Î½ÃÀú¿¡ ´ëÇؼ´Â µÚ¿¡¼ ¼³¸íµË´Ï´Ù.
Sub ConvertTemp()
temp = InputBox("Ⱦ¾ ¿Âµµ¸¦ ÀÔ·ÂÇϽʽÿÀ.", 1)
MsgBox "¼·¾¾ " & Celsius(temp) & "µµÀÔ´Ï´Ù."
End Sub
Function ÇÁ·Î½ÃÀú
Function ÇÁ·Î½ÃÀú´Â Function ¹®°ú End Function ¹®À¸·Î ¹¾îÁø ÀÏ·ÃÀÇ VBScript ¸í·É¹®ÀÔ´Ï´Ù. Function ÇÁ·Î½ÃÀú´Â Sub ÇÁ·Î½ÃÀú¿Í ºñ½ÁÇÏÁö¸¸ °ªÀ» ¹ÝȯÇÏ´Â Á¡ÀÌ ´Ù¸¨´Ï´Ù. Function ÇÁ·Î½ÃÀú¿¡¼´Â È£ÃâÇÏ´Â ÇÁ·Î½ÃÀú°¡ Àü´ÞÇÏ´Â »ó¼ö, º¯¼ö ¶Ç´Â ½ÄÀ¸·Î µÈ Àμö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Function ÇÁ·Î½ÃÀú¿¡¼ Àμö°¡ ¾øÀ¸¸é ÇØ´ç Function ¹®¿¡ ºó °ýÈ£°¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. Function ¹®Àº ÇØ´ç ÇÁ·Î½ÃÀú¿¡ ÀÖ´Â Çϳª ÀÌ»óÀÇ ¸í·É¹®¿¡¼ ±× À̸§¿¡ °ªÀ» ÁöÁ¤ÇÏ´Â ¹æ¹ýÀ¸·Î °ªÀ» ¹ÝȯÇÕ´Ï´Ù. Function ¹®ÀÇ ¹Ýȯ µ¥ÀÌÅÍ Çü½ÄÀº ¾ðÁ¦³ª VariantÀÔ´Ï´Ù.
¾Æ·¡ ¿¹Á¦¿¡¼ Celsius ÇÔ¼ö´Â Ⱦ¾ ¿Âµµ¸¦ ¼·¾¾ ¿Âµµ·Î °è»êÇÕ´Ï´Ù. ConvertTemp Sub ÇÁ·Î½ÃÀúÀÇ ÇÔ¼ö¸¦ È£ÃâÇϸé Àμö °ªÀ» °¡Áö°í ÀÖ´Â º¯¼ö¸¦ ±× ÇÔ¼ö¿¡ Àü´ÞÇÏ°í, È£ÃâÇÑ ÇÁ·Î½ÃÀú¿¡ °è»ê °á°ú¸¦ ¹ÝȯÇÏ¿© ¸Þ½ÃÁö »óÀÚ¿¡ Ç¥½ÃÇÕ´Ï´Ù.
Sub ConvertTemp()
temp = InputBox("Ⱦ¾ ¿Âµµ¸¦ ÀÔ·ÂÇϽʽÿÀ.", 1)
MsgBox "¼·¾¾" & Celsius(temp) & "µµÀÔ´Ï´Ù."
End Sub
Function Celsius(fDegrees)
Celsius = (fDegrees - 32) * 5 / 9
End Function
ÇÁ·Î½ÃÀú ¾ÈÆÆÀ¸·Î µ¥ÀÌÅÍ Àü´Þ
°¢ µ¥ÀÌÅÍ´Â Àμö¸¦ »ç¿ëÇÏ´Â ÇÁ·Î½ÃÀú¿¡ Àü´ÞµË´Ï´Ù. Àμö´Â ÇÁ·Î½ÃÀú¿¡ Àü´ÞÇÒ µ¥ÀÌÅÍÀÇ ÀÚ¸® Ç¥½ÃÀÚ ¿ªÇÒÀ» ÇÕ´Ï´Ù. º¯¼ö À̸§À¸·Î À¯È¿ÇÑ °ÍÀÌ¸é ¸ðµÎ Àμö·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Sub ¹®À̳ª Function ¹®À» »ç¿ëÇÏ¿© ÇÁ·Î½ÃÀú¸¦ ÀÛ¼ºÇϸé ÇÁ·Î½ÃÀú À̸§ µÚ¿¡ °ýÈ£°¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¸ðµç Àμö´Â °ýÈ£ ¾È¿¡ ½°Ç¥·Î ±¸ºÐÇÏ¿© µÓ´Ï´Ù. ¿¹¸¦ µé¾î, ¾Æ·¡ ¿¹Á¦¿¡¼ fDegrees´Â ¿Âµµ¸¦ º¯È¯ÇÏ´Â Celsius ÇÔ¼ö¿¡ Àü´ÞÇÒ °ªÀÇ ÀÚ¸® Ç¥½ÃÀÚÀÔ´Ï´Ù.
Function Celsius(fDegrees)
Celsius = (fDegrees - 32) * 5 / 9
End Function
µ¥ÀÌÅ͸¦ ÇÁ·Î½ÃÀú ¹ÛÀ¸·Î °¡Á®¿À·Á¸é Function ¹®À» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. Function ÇÁ·Î½ÃÀú´Â °ªÀ» ¹ÝȯÇÒ ¼ö ÀÖÁö¸¸ Sub ÇÁ·Î½ÃÀú´Â °ªÀ» ¹ÝȯÇÒ ¼ö ¾ø½À´Ï´Ù.
Äڵ忡¼ÀÇ Sub ÇÁ·Î½ÃÀú¿Í Function ÇÁ·Î½ÃÀú »ç¿ë
Äڵ忡 ÀÖ´Â Function ÇÁ·Î½ÃÀú´Â ¾ðÁ¦³ª º¯¼ö ÁöÁ¤À̳ª ½ÄÀÇ ¿À¸¥ÂÊ¿¡ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. »ç¿ë ¿¹´Â ¾Æ·¡¿Í °°½À´Ï´Ù.
Temp = Celsius(fDegrees)
¶Ç´Â
MsgBox "¼·¾¾ " & Celsius(fDegrees) & "µµÀÔ´Ï´Ù."
´Ù¸¥ ÇÁ·Î½ÃÀúÀÇ Sub ÇÁ·Î½ÃÀú¸¦ È£ÃâÇÏ·Á¸é °¢°¢ ½°Ç¥·Î ±¸ºÐµÈ ÇÊ¿äÇÑ ÀμöµéÀÇ °ª°ú ÇÔ²² ÇÁ·Î½ÃÀú À̸§¸¸ ÀÔ·ÂÇÏ¸é µË´Ï´Ù. Call ¹®Àº »ç¿ëÇÒ ÇÊ¿ä°¡ ¾øÁö¸¸, À̸¦ »ç¿ëÇÒ °æ¿ì Àμö¸¦ °ýÈ£·Î ¹¾î¾ß ÇÕ´Ï´Ù.
¾Æ·¡ ¿¹Á¦¿¡¼´Â MyProc ÇÁ·Î½ÃÀú¸¦ µÎ ¹ø È£ÃâÇÕ´Ï´Ù. ÇÑ ¹øÀº ÄÚµå ¾ÈÀÇ Call ¹®À» »ç¿ëÇÏ´Â ´ë½Å ´Ù¸¥ ÇÑ ¹øÀº »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù. ±×·¯³ª µÎ È£Ãâ ¸ðµÎ ¶È°°Àº ÀÛ¾÷À» ¼öÇàÇÕ´Ï´Ù.
Call MyProc(firstarg, secondarg)
MyProc firstarg, secondarg
Call ¹®À» »ç¿ëÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â °ýÈ£¸¦ »ý·«ÇÑ´Ù´Â Á¡¿¡ À¯ÀÇÇϽʽÿÀ.
|
|
|
|