¿©±â±îÁö °´Ã¼ÀÇ ¿¬»êÀ» À§ÇØ ¿¬»êÀÚ¸¦ ¿À¹ö·ÎµùÇÏ´Â µÎ °¡Áö ¹æ¹ý¿¡ ´ëÇØ ¿¬±¸ÇØ º¸¾Ò´Âµ¥ Áö±Ý±îÁöÀÇ ³»¿ë¸¸ ÇØµµ ±×´ÙÁö ½±Áö´Â ¾Ê¾ÒÀ» °ÍÀÌ´Ù. ¿¬»êÀÚ ¿À¹ö·ÎµùÀº ¾ÆÁÖ ¸ÚÁø ±â´ÉÀÓ¿¡ Ʋ¸²¾øÁö¸¸ ¾ÆÁÖ ¸¹Àº ±ÔÄ¢°ú Á¦¾àÀÌ Á¸ÀçÇÑ´Ù. ÀÌ ±ÔÄ¢µéÀº ¿¬»êÀÚ ¿À¹ö·Îµù¿¡ µû¸¥ ºÎÀÛ¿ëÀ» ÇØ¼ÒÇÏ°í ¾ÈÀüÇÏ°Ô ¿¬»êÀÚ¸¦ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ¸¶·ÃµÈ °ÍµéÀÌ´Ù. ³»¿ëÀÌ Á» ¸¹±â´Â ÇÏÁö¸¸ »ó½Ä ¹üÀ§¸¦ Å©°Ô ¹þ¾î³ª´Â °ÍÀº ¾øÀ¸¹Ç·Î ½±°Ô Àͼ÷ÇØÁú ¼ö ÀÖÀ» °ÍÀÌ´Ù.
¿¬»êÀÚ ¿À¹ö·ÎµùÀº ÀÌ¹Ì Á¸ÀçÇÏ´Â ¿¬»êÀÚÀÇ ±â´ÉÀ» Á¶±Ý ¹Ù²Ù´Â °ÍÀÌÁö ¾Æ¿¹
»õ·Î¿î ¿¬»êÀÚ¸¦ ¸¸µå´Â °ÍÀº ¾Æ´Ï´Ù. ¿ø·¡ C++ ¾ð¾î°¡ Á¦°øÇÏ´Â ±âÁ¸ ¿¬»êÀÚ¸¸ ¿À¹ö·ÎµùÀÇ ´ë»óÀ̸ç C++ÀÌ Á¦°øÇÏÁö ¾Ê´Â ¿¬»êÀÚ¸¦ ÀÓÀÇ·Î ¸¸µé
¼ö´Â ¾ø´Ù. ¿¹¸¦ µé¾î C++Àº ´©½Â ¿¬»êÀÚ¸¦ Á¦°øÇÏÁö ¾Ê´Âµ¥(´ë½Å pow¶ó´Â Ç¥ÁØ ÇÔ¼ö¸¦ Á¦°øÇÑ´Ù.) ÀÌ·± ¸ñÀûÀ¸·Î **¶ó´Â ¿ÏÀüÈ÷ »õ·Î¿î ¿¬»êÀÚ¸¦
Á¤ÀÇÇÏ°í ½ÍÀ¸¸ç C++ÀÌ À̸¦ Çã¿ëÇÑ´Ù°í ÇØ º¸ÀÚ. ±×·¸´Ù¸é c=a**b; ¶ó´Â ¿¬»ê½ÄÀÌ °¡´ÉÇØÁö´Âµ¥ ÄÄÆÄÀÏ·¯°¡ ÀÌ ½ÄÀ» ÇØ¼®ÇÒ ¶§ µÎ °¡Áö ¸ðÈ£ÇÑ
»óȲÀÌ ¹ß»ýÇÑ´Ù.
¿ì¼± ÀÌ ¿¬»ê½ÄÀ» a¸¦ b¸¸Å ´©½ÂÇ϶ó´Â °ÍÀÎÁö ¾Æ´Ï¸é a¿Í Æ÷ÀÎÅÍ b°¡ °¡¸®Å°´Â °÷ÀÇ ³»¿ëÀ» ÀÐ¾î °öÇ϶ó´Â °ÍÀÎÁö¸¦ ÆÇº°ÇÒ ¼ö ¾ø´Ù. a**b´Â a ´©½Â b·Î º¼ ¼öµµ ÀÖ°í a*(*b)·Î º¼ ¼öµµ ÀÖ¾î ±¸¹® ºÐ¼® ´Ü°è¿¡¼ ¸ðÈ£ÇÔÀÌ ¹ß»ýÇÑ´Ù. ±×¸®°í »õ·Î ¸¸µé¾îÁø ¿¬»êÀÚÀÇ ¿ì¼± ¼øÀ§¿Í °áÇÕ ¼ø¼¸¦ ¾î¶»°Ô Á¤ÇÒ °ÍÀÎÁöµµ ¹®Á¦°¡ µÈ´Ù. c=a**b+d¶ó´Â ½ÄÀÌ ÀÖÀ» ¶§ ´©½ÂÀÌ ¸ÕÀúÀÎÁö µ¡¼ÀÀÌ ¸ÕÀúÀÎÁö¸¦ ÄÄÆÄÀÏ·¯°¡ ÀÓÀÇ·Î °áÁ¤ÇÒ ¼ö ¾ø´Ù. ¸¸¾à À̰ÍÀ» Á¤ °¡´ÉÇÏ°Ô ÇÏÀÚ¸é »ç¿ëÀÚ°¡ »õ·Î ¸¸µç ¿¬»êÀÚÀÇ ¿ì¼± ¼øÀ§¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Â ¹®¹ýÀ» ¸¸µé¾î¾ß Çϴµ¥ ¿¬»êÀÚ Çϳª¸¦ ¾²±â À§ÇØ ÀÌ·± º¹ÀâÇÑ ÁöÁ¤±îÁö ÇØ¾ß ÇÑ´Ù¸é Â÷¶ó¸® ¾È ¾²´Â °ÍÀÌ ´õ ³ªÀ» °ÍÀÌ´Ù.
C++ÀÌ »ç¿ëÇÏÁö ¾Ê´Â ¹®ÀÚÀÎ $, @ °°Àº ±âÈ£¸¦ »õ·Î¿î ¿¬»êÀÚ·Î Á¤ÀÇÇÒ ¼ö ÀÖ´Ù¸é ³ª¸§´ë·Î Æí¸®ÇϰÚÁö¸¸ ¿À¹ö·ÎµùÀ̶õ ÀÌ¹Ì Á¸ÀçÇÏ´Â °ÍÀ» Áߺ¹ Á¤ÀÇÇÏ´Â °ÍÀÌÁö ¾ø´Â °É ¾Æ¿¹ »õ·Î ¸¸µå´Â °ÍÀÌ ¾Æ´Ï¹Ç·Î ÀÌ °æ¿ìµµ ºÎÀû´çÇÏ´Ù. »ç¿ëÀÚ°¡ ÀÓÀÇ·Î ¿¬»êÀÚ¸¦ ¸¸µé ¼ö ÀÖµµ·Ï ÇÏ´Â °ÍÀº À̷лó ºÐ¸íÈ÷ °¡´ÉÇÏÁö¸¸ ÀÌ·± ±â´ÉÀ» Áö¿øÇϱâ À§ÇØ ´ëÆøÀûÀÎ ¹®¹ýÀÇ È®ÀåÀÌ ÇÊ¿äÇÏ¸ç ¿¹±âÄ¡ ¸øÇÑ ºÎÀÛ¿ëÀÌ »ý±æ ¼ö ÀÖ´Ù. µæº¸´Ù ½ÇÀÌ ´õ ¸¹±â ¶§¹®¿¡ C++Àº ¾Æ¿¹ »õ·Î¿î ¿¬»êÀÚ¸¦ ¸¸µå´Â ¹®¹ýÀº Á¦°øÇÏÁö ¾Ê´Â´Ù.
ÀÌ¹Ì Á¸ÀçÇÏ´Â ¿¬»êÀÚ Áß¿¡µµ ¿À¹ö·ÎµùÀÇ ´ë»óÀÌ ¾Æ´Ñ °ÍµéÀÌ ÀÖ´Ù. ´ÙÀ½ ¿¬»êÀÚµéÀº
±â´ÉÀ» º¯°æÇÒ ¼ö ¾ø´Ù. Áï, ¿À¹ö·ÎµùÀÇ ´ë»óÀÌ ¾Æ´Ï´Ù.
.(±¸Á¶Ã¼ ¸â¹ö ¿¬»êÀÚ) ::(¹üÀ§ ¿¬»êÀÚ) ?:(»ïÇ× Á¶°Ç ¿¬»êÀÚ)
.*( ¸â¹ö Æ÷ÀÎÅÍ ¿¬»êÀÚ) sizeof typeid
static_cast dynamic_cast const_cast
reinterpret_cast new delete
ÀÌ ¿¬»êÀÚµéÀº C++ÀÇ Å¬·¡½º¿Í °ü·ÃµÈ Áß¿äÇÑ µ¿ÀÛÀ» Çϱ⠶§¹®¿¡ Ŭ·¡½º¸¦ ±â¹ÝÀ¸·Î ÇÏ´Â ¿¬»êÀÚ ¿À¹ö·ÎµùÀÇ Àç·á·Î ¾²±â¿¡´Â ¹«¸®°¡ ÀÖ´Ù. Ŭ·¡½ºÀÇ ¸â¹ö¸¦ ÁöÁ¤ÇÏ´Â . ¿¬»êÀÚÀÇ µ¿ÀÛÀ» ¹Ù²ã ¹ö¸®¸é ¾î¶² È¥¶õÀÌ ¿ÃÁö °¡È÷ »ó»óÀÌ °¥ °ÍÀÌ´Ù. »ïÇ× Á¶°Ç ¿¬»êÀÚ´Â ÇÇ¿¬»êÀÚ°¡ ¼ÂÀ̳ª µÇ±â ¶§¹®¿¡ ¿À¹ö·ÎµùÀ» ÇÏ´õ¶óµµ ´Ù¸¥ ¿¬»êÀÚ¿¡ ºñÇØ ´õ º¹ÀâÇÑ ±ÔÄ¢ÀÌ ÇÊ¿äÇÒ °ÍÀ¸¹Ç·Î ¾Æ¿¹ ¿À¹ö·ÎµùÇÏÁö ¸øÇϵµ·Ï µÇ¾î ÀÖ´Ù. ÀÌ·± ¸î °¡Áö Ư¼öÇÑ ¿¬»êÀÚ¸¸ »©°í ³ª¸ÓÁö 42°³³ª µÇ´Â ¿¬»êÀÚµéÀº ¸ðµÎ ¿À¹ö·ÎµùÇÒ ¼ö ÀÖÀ¸¹Ç·Î ¿¬»êÀÚ°¡ ºÎÁ·ÇÑ »óȲÀº ¹ß»ýÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù.
¿À¹ö·Îµù °¡´ÉÇÑ ¿¬»êÀÚ Áß¿¡µµ °¡±ÞÀû ¿À¹ö·ÎµùÀ» »ï°¡ÇØ¾ß ÇÏ´Â °Íµµ ÀÖ´Ù. ¾ð¾î°¡ Á¦°øÇÏ´Â ¿¬»êÀÚ´Â ¿ì¼±¼øÀ§ ±ÔÄ¢ÀÌ ¸íÈ®ÇÏ°Ô Á¤ÀǵǾî ÀÖ¾î Á¿ìÀÇ ÇÇ¿¬»êÀÚ Áß ¾î¶² °ÍÀÌ ¸ÕÀú Æò°¡µÉÁö ¿¹Ãø °¡´ÉÇÏ´Ù. ±×·¯³ª ÇÔ¼ö·Î ¿À¹ö·ÎµùµÇ¸é ÀμöÀÇ Æò°¡ ¼ø¼°¡ Á¤ÀǵÇÁö ¾ÊÀ¸¹Ç·Î ¿øÄ¡ ¾Ê´Â ºÎÀÛ¿ëÀÌ ¹ß»ýÇÒ ¼öµµ ÀÖ´Ù. ¿¹¸¦ µé¾î ÄÞ¸¶ ¿¬»êÀÚÀÇ °æ¿ì Á¿¡¼ ¿ì·Î ¼ø¼´ë·Î Æò°¡ÇÏÁö¸¸ ÇÔ¼ö·Î ¿À¹ö·ÎµùµÇ¸é ÀÌ·± ¿ì¼± ¼øÀ§°¡ ´õ ÀÌ»ó Àû¿ëµÇÁö ¾Ê´Â´Ù. ÇÔ¼öÀÇ Àμö´Â º¸Åë ¿ì¿¡¼ Á·ΠÆò°¡µÇ¾î ¿¬»êÀÚÀÇ Æò°¡ ¼ø¼¿Í´Â ¹Ý´ë·Î µÇ¾î Àִµ¥ ¼ø¼°¡ Àǹ̰¡ ÀÖÀ» ¶§´Â ¹®Á¦°¡ µÉ ¼öµµ ÀÖ´Ù.
&&, || ³í¸® ¿¬»êÀÚÀÇ °æ¿ì ¼îÆ® ¼Å°Æ® ±â´ÉÀÌ µ¿ÀÛÇϵµ·Ï ¼³°èµÇ¾î ÀÖÁö¸¸ ¿À¹ö·ÎµùµÇ¸é ¼îÆ® ¼Å°Æ®´Â ´õ ÀÌ»ó µ¿ÀÛÇÏÁö ¾Ê´Â´Ù. ¹®¹ýÀûÀ¸·Î´Â Çã¿ëµÈ´Ù ÇÏ´õ¶óµµ ±× È¿°ú¸¦ ¿¹ÃøÇϱ⠾î·Á¿ì¹Ç·Î °¡±ÞÀûÀ̸é ÀÌ ¿¬»êÀÚµéÀº ¿À¹ö·ÎµùÇÏÁö ¸»¾Æ¾ß ÇÑ´Ù. »ç½Ç ÀÌ ¿¬»êÀÚµéÀÌ ¿À¹ö·ÎµùµÇ¾î¾ß ÇÏ´Â °æ¿ìµµ °ÅÀÇ ¾ø´Â ÆíÀÌ´Ù.
±âÁ¸ ¿¬»êÀÚÀÇ ±â´ÉÀ» ¹Ù²Ù´õ¶óµµ ¿¬»êÀÚÀÇ º»·¡ ÇüÅ´ º¯°æÇÒ ¼ö ¾ø´Ù. ¿©±â¼
º»·¡ ÇüŶó°í ÇÏ´Â °ÍÀº ÇÇ¿¬»êÀÚÀÇ °³¼ö¿Í ¿ì¼± ¼øÀ§¸¦ ¸»ÇÑ´Ù. + ¿¬»êÀÚ´Â ¿ø·¡ ÇÇ¿¬»êÀÚ¸¦ µÎ °³ ÃëÇÏ´Â ÀÌÇ× ¿¬»êÀÚÀ̹ǷΠ¿À¹ö·ÎµùµÈ ÈÄ¿¡µµ
ÀÌÇ× ¿¬»êÀÚ¿©¾ß ÇÏ¸ç ¹Ýµå½Ã ÇÇ¿¬»êÀÚ µÎ °³¸¦ °¡Á®¾ß ÇÑ´Ù. operator +°¡ ¸â¹ö ¿¬»êÀÚ ÇÔ¼öÀÏ ¶§´Â ÇϳªÀÇ Àμö¸¦ °¡Á®¾ß Çϸç Àü¿ª ¿¬»êÀÚ
ÇÔ¼öÀÏ ¶§´Â µÎ °³ÀÇ Àμö°¡ ÇÊ¿äÇÏ´Ù.
const Time Time::operator +(Time &T) // °¡´É
const Time Time::operator +(int i) // °¡´É
const Time operator +(Time &T,int i) // °¡´É
const Time Time::operator +(Time &T1,Time &T2) // ºÒ°¡´É
const Time operator +(Time &T) // ºÒ°¡´É
const Time operator +(void) // ºÒ°¡´É
¿ì¼± ¼øÀ§³ª °áÇÕ ¼ø¼µµ º¯°æÇÒ ¼ö ¾ø´Ù. + ¿¬»êÀÚÀÇ ±â´ÉÀ» ¹Ù²Ù¾î °ö¼ÀÀ̳ª ´©½ÂÀ» Çϵµ·Ï ¿À¹ö·ÎµùÇß´Ù ÇÏ´õ¶óµµ ÀÌ ¿¬»êÀÚÀÇ ¿ì¼± ¼øÀ§´Â ¿ø·¡ÀÇ + ¿¬»êÀÚÀÇ °Í°ú µ¿ÀÏÇÏ´Ù. ÄÄÆÄÀÏ·¯´Â ¿¬»êÀÚ°¡ ³í¸®ÀûÀ¸·Î ¾î¶² ¿¬»êÀ» ÇÏ´ÂÁö ´Ù¸¥ ¿¬»ê°úÀÇ °ü°è°¡ ¾î¶°ÇÑÁö±îÁö´Â ÆÇ´ÜÇÒ ¼ö ¾ø´Ù. µû¶ó¼ ¿ÏÀüÈ÷ »õ·Î¿î ¿¬»êÀ» Á¤ÀÇÇϰíÀÚ ÇÒ ¶§ Àû´çÇÑ ¿ì¼± ¼øÀ§¸¦ °¡Áö´Â ¿¬»êÀÚ¸¦ °ñ¶ó ¿À¹ö·ÎµùÇØ¾ß ÇÑ´Ù.
´Ù¸¥ ¾ð¾î´Â ´©½Â ¿¬»êÀ» À§ÇØ ^ ±âÈ£¸¦ »ç¿ëÇÑ´Ù. ±×·¡¼ ^ ¿¬»êÀÚ¸¦ ´©½Â ¿¬»êÀÚ·Î ÀçÁ¤ÀÇÇÑ´Ù¸é º£ÀÌÁ÷ ¾ð¾îó·³ Æí¸®ÇÏ°Ô ´©½Â ¿¬»êÀ» ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ±×·¯³ª C++¿¡¼ ¿ø·¡ÀÇ ^ ¿¬»êÀÚ´Â °ö¼Àº¸´Ù ¿ì¼± ¼øÀ§°¡ ´Ê°í ½ÉÁö¾î µ¡¼ÀÀ̳ª »¬¼Àº¸´Ùµµ ¿ì¼± ¼øÀ§°¡ ´Ê¾î ¸ð¾çÀÌ Á÷°üÀûÀÌ´õ¶óµµ ´©½Â ¿¬»êÀÚ·Î ÀçÁ¤ÀÇÇϱ⿡´Â ¾î¿ï¸®Áö ¾Ê´Â´Ù. 2^3+4´Â 12¿©¾ß »ó½ÄÀûÀÌÁö¸¸ +ÀÇ ¼øÀ§°¡ ³ô¾Æ 128ÀÌ µÇ¾î ¹ö¸°´Ù.
¾ÆÁÖ ´ç¿¬ÇÑ ¾ê±â°¡ µÇ°ÚÁö¸¸ ÇÑ Å¬·¡½º°¡ ÇϳªÀÇ ¿¬»êÀÚ¸¦ ¿©·¯ °¡Áö ÇÇ¿¬»êÀÚ
ŸÀÔ¿¡ ´ëÇØ ¿À¹ö·ÎµùÇÒ ¼ö ÀÖ´Ù. ¿À¹ö·ÎµùÀ̶õ ÀμöÀÇ °³¼ö³ª ŸÀÔÀÌ ´Ù¸£¸é Ç×»ó ¼º¸³ÇϹǷΠ¿©·¯ °³ÀÇ ÇÇ¿¬»êÀÚ¿¡ ´ëÇÑ ¿¬»êÀÚ¸¦ Á¦°øÇÒ ¼ö ÀÖ´Ù´Â
¾ê±â´Ù. Time Ŭ·¡½º¿¡ ´ÙÀ½ µÎ µ¡¼À ¿¬»êÀÚ°¡ µ¿½Ã¿¡ Á¤ÀǵǾ ¾Æ¹«·± ¹®Á¦°¡ ¾ø´Ù.
const Time operator+(const Time &T) const { .... }
const Time operator +(int s) const { .... }
À§ÂÊ ÇÔ¼ö´Â ½Ã°£¿¡ ½Ã°£À» ´õÇÏ´Â °ÍÀÌ°í ¾Æ·¡ÂÊ ÇÔ¼ö´Â ½Ã°£¿¡ Á¤¼ö¸¦ ´õÇÏ´Â °ÍÀÌ´Ù. È£ÃâºÎ¿¡¼ ÇÇ¿¬»êÀÚ Å¸ÀÔÀ» º¸°í ¾î¶² µ¡¼ÀÀ» ¿øÇÏ´ÂÁö ¾Ë ¼ö ÀÖÀ¸¹Ç·Î ¸ðÈ£ÇÏÁö ¾ÊÀ¸¸ç ½Ç¿ë¼ºµµ ÀÖ´Ù. ¿øÇÑ´Ù¸é ½Ã°£¿¡ ½Ç¼ö³ª Date¸¦ ´õÇÏ´Â + ¿¬»êÀÚµµ ¾ó¸¶µçÁö Áߺ¹ Á¤ÀÇÇÒ ¼ö ÀÖ´Ù.
¿À¹ö·ÎµùµÈ ¿¬»êÀÚÀÇ ÇÇ¿¬»êÀÚ Áß Àû¾îµµ Çϳª´Â »ç¿ëÀÚ Á¤ÀÇÇüÀ̾î¾ß ÇÑ´Ù.
¿¬»êÀÚÀÇ ±â´ÉÀ» ¹Ù²Ù´Â ¸ñÀûÀº °´Ã¼¿¡ ´ëÇÑ °íÀ¯ÇÑ ¿¬»ê ¹æ¹ýÀ» Á¤ÀÇÇϱâ À§ÇÑ °ÍÀ̹ǷΠ¹Ýµå½Ã °´Ã¼¿Í °ü·ÃÀÖ´Â ¿¬»êÀÚ¸¸ Áߺ¹ Á¤ÀÇÇÒ ¼ö ÀÖ´Ù.
C++ÀÌ ±âº»ÀûÀ¸·Î Á¦°øÇϴ ŸÀÔ¿¡ ´ëÇØ¼´Â ¿¬»êÀÚ¸¦ ¿À¹ö·ÎµùÇÒ ¼ö ¾ø´Ù. ¸¸¾à ´ÙÀ½°ú °°Àº ¿¬»êÀÚ ÇÔ¼ö¸¦ ¸¸µé ¼ö ÀÖ´Ù°í ÇØ º¸ÀÚ.
int operator +(int a, int b)
{
....
}
ÀÌ ÇÔ¼ö´Â Á¤¼öÇüÀÇ µ¡¼À ¿¬»êÀ» ¿ÏÀüÈ÷ »õ·Î Á¤ÀÇÇϴµ¥ Á¤¼öÇüÀÇ µ¡¼ÀÀº ¾ð¾îÀÇ °¡Àå ±âº»ÀûÀÎ µ¿ÀÛÀ̰í CPUÀÇ ¿øÀÚÀûÀÎ ¿¬»êÀ̱⠶§¹®¿¡ ÀÌ µ¿ÀÛÀÌ ¹Ù²î°Ô µÇ¸é ÆÄ±ÞÈ¿°ú°¡ ³Ê¹« ¾öû³¯ °ÍÀÌ´Ù. ±×·¡¼ ÄÄÆÄÀÏ·¯´Â ±âº»Çü¿¡ ´ëÇÑ ¿¬»êÀÚ ¿À¹ö·ÎµùÀº °ÅºÎÇϸç "ÃÖ¼ÒÇÑ ÇϳªÀÇ ÇÇ¿¬»êÀڴ Ŭ·¡½º ŸÀÔÀ̾î¾ß ÇÑ´Ù"´Â ¿¡·¯ ¸Þ½ÃÁö¸¦ Ãâ·ÂÇÑ´Ù.
»ç½Ç À§¿¡¼ º¸ÀÎ µÎ °³ÀÇ Á¤¼ö¸¦ ´õÇÏ´Â ¿¬»êÀÚ´Â ½Ã½ºÅÛ¿¡ ÀÌ¹Ì Á¸ÀçÇÑ´Ù. ¿À¹ö·ÎµùÀ̶õ ÀμöÀÇ °³¼ö³ª ŸÀÔÀÌ ´Þ¶ó¾ß ÇϹǷΠÀ§ ¿¬»êÀÚ´Â ¿À¹ö·ÎµùÀÇ ´ë»óÀÌ µÉ ¼öµµ ¾ø´Ù. ¿À¹ö·ÎµùÀ̶õ ÀÌ¹Ì Á¸ÀçÇÏ´Â ÇÔ¼öÀÇ ±â´ÉÀ» ¹Ù²Ù´Â °ÍÀÌ ¾Æ´Ï¶ó ŸÀÔ¿¡ µû¶ó ´Ù¸£°Ô µ¿ÀÛÇÏ´Â ÇÔ¼ö¸¦ Áߺ¹ Á¤ÀÇÇÏ´Â °ÍÀ̹ǷΠ±âº» ŸÀÔ¿¡ ´ëÇÑ ¿¬»êÀÚ´Â ¸¸µé ¼ö ¾ø´Â °ÍÀÌ´Ù.
°Á¦ÀûÀÎ ±ÔÄ¢Àº ¾Æ´ÏÁö¸¸ ¿¬»êÀÚÀÇ ³í¸®Àû Àǹ̴ °¡±ÞÀû À¯ÁöÇÏ´Â °ÍÀÌ ¹Ù¶÷Á÷ÇÏ´Ù.
+ ¿¬»êÀÚ¸¦ ¿À¹ö·ÎµùÇÑ´Ù¸é ¾î¶² Ŭ·¡½º¿¡ ´ëÇØ¼¶óµµ µ¡¼ÀÀÇ Àǹ̸¦ °¡Áö´Â ¿¬»êÀ» ÇÏ´Â °ÍÀÌ ÁÁ´Ù. ±×·¡¾ß ¿¬»êÀÚ¿¡ ´ëÇÑ »ç¿ëÀÚµéÀÇ ±âÁ¸ »ó½ÄÀ»
º¸È£ÇÒ ¼ö ÀÖ´Ù. + ¿¬»êÀÚ¸¦ ´õÇϱâ¿Í´Â ÀüÇô »ó°ü¾ø´Â ´Ù¸¥ ¿¬»êÀ¸·Î ¿À¹ö·ÎµùÇØ ¹ö¸®¸é ÀÌ °´Ã¼¸¦ »ç¿ëÇÏ´Â »ç¶÷Àº È¥¶õ½º·¯¿öÇÒ °ÍÀÌ´Ù. ±×·¯³ª
ÀÌ ±ÔÄ¢Àº ¾îµð±îÁö³ª ±ÇÀå »çÇ×ÀÏ »ÓÀ̹ǷΠºÒ°¡ÇÇÇÒ °æ¿ì´Â ÁöŰÁö ¾Ê¾Æµµ »ó°ü¾ø´Ù.
¿¹¸¦ µé¾î Ç¥ÁØ ÀÔÃâ·Â ½ºÆ®¸²ÀÎ coutÀº ½¬ÇÁÆ® ¿¬»êÀÚÀÎ << ¸¦ ¸ð¾çÀÌ ¸¶À½¿¡ µç´Ù´Â ÀÌÀ¯·Î Ãâ·Â ¿¬»êÀÚ·Î ÀçÁ¤ÀÇÇÏ´Â ¸¸ÇàÀ» ÀúÁö¸£±âµµ ÇÑ´Ù. ±âº» ¹®¹ý¿¡´Â Á¦°øµÇÁö ¾Ê´Â ¿ÏÀüÈ÷ »õ·Î¿î ¿¬»êÀ» Á¤ÀÇÇÒ °æ¿ì´Â Àû´çÇÑ ¿ì¼± ¼øÀ§¸¦ °¡Áö°í ¸ð¾çÀÌ Á» ±×·²½ÎÇØº¸ÀÌ´Â ¿¬»êÀÚ Çϳª¸¦ ¼±ÅÃÇÒ ¼ö¹Û¿¡ ¾øÀ» °ÍÀÌ´Ù.
¿¬»êÀÚ¸¦ ÀûÀýÇÏ°Ô ¿À¹ö·ÎµùÇÏ¸é º¹ÀâÇÑ °ÍÀ» °£°áÇÏ°Ô ³í¸®ÀûÀ¸·Î Ç¥±âÇÒ ¼ö ÀÖ°í ¾î¶² µ¿ÀÛÀ» ÇÑ´Ù´Â °ÍÀ» ¸íÈ®ÇÏ°Ô Ç¥ÇöÇÒ ¼ö ÀÖ¾î °¡µ¶¼º¿¡ À¯¸®ÇÏ´Ù. ¶ÇÇÑ ÀÌ¹Ì Àͼ÷ÇØÁø ¿¬»êÀÚ¸¦ Á÷°üÀûÀÎ ¹æ¹ýÀ¸·Î Ȱ¿ëÇÒ ¼ö ÀÖÀ¸¹Ç·Î »ý»ê¼º Çâ»ó¿¡µµ Å« ±â¿©¸¦ ÇÑ´Ù. ±×·¯³ª ¿¬»êÀÚ ¿À¹ö·Îµù¿¡´Â ¿©·¯ °¡Áö ºÎÀÛ¿ëµµ ÀÖÀ½À» ¾Ë¾Æ¾ß ÇÑ´Ù. ¸ðµç ¹®¹ýÀÌ ¸¶Âù°¡Áö°ÚÁö¸¸ ¿¬»êÀÚ ¿À¹ö·ÎµùÀº ²À ÇÊ¿äÇÒ ¶§, ±×¸®°í ³í¸®ÀûÀ¸·Î ¹«¸®°¡ ¾øÀ» ¶§¿¡ ÇÑÇØ ±ÔÄ¢¿¡ ¸Â°Ô ¾ÈÀüÇÏ°Ô »ç¿ëÇØ¾ß ÇÑ´Ù.
C++ÀÇ Ã¶ÇÐÀº ÀÛ¼ºÇÏ´Â »ç¶÷À» Æí¸®ÇÏ°Ô ÇÏ´Â °Íº¸´Ù´Â ¸¸µé¾îÁø °´Ã¼¸¦ »ç¿ëÇÏ´Â »ç¶÷À» ÆíÇÏ°Ô ÇÏÀÚ´Â µ¥ ÀÖ´Ù. º¸´Ù½ÃÇÇ ¿¬»êÀÚ ¿À¹ö·ÎµùÀ̶õ º¹ÀâÇÑ ±ÔÄ¢ÀÌ Á¸ÀçÇÏ°í ¼²ºÒ¸® À߸ø ¸¸µé °æ¿ì ¿Àµ¿ÀÛÀ» ÇÒ À§ÇèÀÌ µµÃ³¿¡ µµ»ç¸®°í ÀÖÁö¸¸ ÇÑ ¹ø¸¸ Àß ¸¸µé¾î ³õÀ¸¸é ¿©·¯ »ç¶÷ÀÌ Æí¸®ÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Â ±×·± ÀåÄ¡ÀÌ´Ù. ¿¹¸¦ µé¾î strÀ̶ó´Â ¹®ÀÚ¿¿¡ ÁÖ¾îÁø ¹®ÀÚ¿ s1, s2, s3¸¦ Â÷·Ê´ë·Î ¾ÕÂÊ¿¡ »ðÀÔÇÏ°í ½Í´Ù°í ÇÏÀÚ. °¡·É strÀÌ "aaa", s1ÀÌ "111", s2°¡ "222", s3°¡ "333"À̶ó°í ÇÒ ¶§ strÀ» "333222111aaa"·Î ¸¸µé°í ½ÍÀº °ÍÀÌ´Ù. ¹®ÀÚ¿À» µÚÂÊ¿¡ ¿¬°áÇÏ´Â °ÍÀº strcat·Î °£´ÜÇÏ°Ô ÇØ°áÇÒ ¼ö ÀÖÁö¸¸ ¾ÕÂÊ ¿¬°áÀº Ç¥ÁØ ÇÔ¼öÀÇ Áö¿øÀÌ ¾ø¾î Á÷Á¢ ÇØ¾ß ÇÑ´Ù. CÀÇ ÇØ°á ¹æ¹ýÀº ´ÙÀ½°ú °°´Ù.
|
char temp[256]; strcpy(temp,str); strcpy(str,s1); strcat(str,temp); strcpy(temp,str); strcpy(str,s2); strcat(str,temp); strcpy(temp,str); strcpy(str,s3); strcat(str,temp); |
|
¾ÕÂÊ¿¡ »ðÀÔÇØ¾ß ÇϹǷΠtemp¶ó´Â Àӽà ¹öÆÛµµ ÇÊ¿äÇÏ°í º¹»ç ¹× ¿¬°áÀ» ¿©·¯ ¹ø ¹Ýº¹ÀûÀ¸·Î ¼öÇàÇØ¾ß ÇÑ´Ù. strcat Ç¥ÁØ ÇÔ¼ö´Â µÚÂÊ¿¡ µ¡ºÙÀ̱⸸ ÇÒ »Ó ¾ÕÂÊ¿¡ »ðÀÔÇÏÁö´Â ¸øÇϱ⠶§¹®ÀÌ´Ù. »Ó¸¸ ¾Æ´Ï¶ó strÀÌ ³ª¸ÓÁö ¹®ÀÚ¿À» ¸ðµÎ Æ÷ÇÔÇÒ ¼ö ÀÖ´Â ÃæºÐÇÑ ±æÀ̸¦ °¡Áö´Â°¡µµ Ç×»ó ½Å°æ½á¾ß ÇÏ¸ç ±×·¸Áö ¸øÇÒ °æ¿ì À§ÇèÇØÁö±â±îÁö ÇÑ´Ù. ¹°·Ð sprintf¶ó´Â Á» ´õ °£´ÜÇÑ ¹æ¹ýµµ ÀÖ°í ¾ÕÂÊ¿¡ »ðÀÔÇÏ´Â ÇÔ¼ö¸¦ µû·Î ¸¸µé ¼öµµ ÀÖÁö¸¸ ºñÈ¿À²ÀûÀÌ°í ºÒÆíÇϱâ´Â ¸¶Âù°¡Áö´Ù. ±×·¯³ª ÀÌ ¹®Á¦¸¦ C++ °´Ã¼¿Í ¿¬»êÀÚ ¿À¹ö·ÎµùÀ» »ç¿ëÇϸé Á¤¸» °£´ÜÇØÁø´Ù.
str=s3+s2+s1+str;
´Ü, ÇÑ ÁÙ·Î ³¡³´Ù. ´Ü¼øÈ÷ ÄÚµåÀÇ ±æÀ̸¸ ª¾ÆÁö´Â °ÍÀÌ ¾Æ´Ï¶ó ¹®Á¦¸¦ Ǫ´Â °úÁ¤ÀÌ ´Ü¼øÇØÁö´Â °ÍÀÌ´Ù. ¹°·Ð ÀÌ ÄÚµåÀÇ ³»ºÎ¿¡¼´Â CÀÇ ÄÚµå¿Í ¶È°°Àº µ¿ÀÛÀ» ÇϰÚÁö¸¸ »ç¿ëÀÚ¿¡°Ô´Â ÀÌ·± »ó¼¼ÇÑ °úÁ¤ÀÌ ¼û°ÜÁö¹Ç·Î ¸ô¶óµµ »ó°ü¾ø´Ù. ÀÌ ¿¬»êÀÌ Á¦´ë·Î ¼öÇàµÇ±â À§Çؼ´Â operator +°¡ ¿¬¼âÀûÀÎ ¿¬»êÀ» Àß Áö¿øÇÒ ¼ö ÀÖµµ·Ï ÇØ¾ß ÇÏ¸ç ±³È¯ ¹ýÄ¢µµ ¸¸Á·ÇØ¾ß ÇÏ°í °´Ã¼°¡ ¹öÆÛ¸¦ Áö´ÉÀûÀ¸·Î °ü¸®ÇÒ Çʿ䵵 ÀÖ´Ù. ¹°·Ð ÀÌ·¸°Ô ¸¸µé±â À§Çؼ´Â µ¡¼À ¿¬»êÀÚ»Ó¸¸ ¾Æ´Ï¶ó »ý¼ºÀÚ, ÆÄ±«ÀÚ, ´ëÀÔ ¿¬»êÀÚ µîµµ ±ÔÄ¢¿¡ ¸Â°Ô Àß ÀÛ¼ºÇØ¾ß ÇÑ´Ù. ÇÏÁö¸¸ °´Ã¼¸¦ ÀÛ¼ºÇÏ´Â °³¹ßÀÚ È¥ÀÚ¼ ÇÑ ¹ø¸¸ ÀÌ·± ¸ðµç ºÎ´ãÀ» °¨¼öÇϸé ÀÌ °´Ã¼¸¦ »ç¿ëÇÏ´Â ¼öõ, ¼ö¸¸¸íÀÇ »ç¿ëÀÚ´Â ¾ÆÁÖ ÇູÇÏ°Ô ÀÌ °´Ã¼¸¦ Àß È°¿ëÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.