28-3-³ª.Áõ°¨ ¿¬»êÀÚ

++¿¬»êÀÚ´Â ÇÇ¿¬»êÀÚ¸¦ 1Áõ°¡½ÃÅ°´Â ´ÜÇ× ¿¬»êÀÚÀÌ´Ù. ºñ½ÁÇÑ Á¾·ùÀÇ -- °¨¼Ò ¿¬»êÀÚµµ Àִµ¥ µÎ ¿¬»êÀÚ´Â Áõ°¨ ¹æÇ⸸ ´Ù¸¦ »Ó ¿À¹ö·ÎµùÇÏ´Â ¹æ¹ýÀº µ¿ÀÏÇϹǷΠ++ ¿¬»êÀÚ¿¡ ´ëÇؼ­¸¸ ¿¹Á¦¸¦ ¸¸µé¾î º¸µµ·Ï ÇÏÀÚ. ´ÙÀ½ ¿¹Á¦´Â Time °´Ã¼¿¡ ++ ¿¬»êÀÚ¸¦ Áߺ¹ Á¤ÀÇÇÑ´Ù.

 

¿¹ Á¦ : TimePlusPlus

#include <Turboc.h>

 

class Time

{

private:

     int hour,min,sec;

 

public:

     Time() { }

     Time(int h, int m, int s) { hour=h; min=m; sec=s; }

     void OutTime() {

          printf("%d:%d:%d\n",hour,min,sec);

     }

     Time &operator ++() {

          sec++;

          min += sec/60;

          sec %= 60;

          hour += min/60;

          min %= 60;

          return *this;

     }

     const Time operator ++(int dummy) {

          Time R = *this;

          ++*this;

          return R;

     }

};

 

void main()

{

     Time A(1,1,1);

     Time B;

 

     B=++A;

     A.OutTime();

     B.OutTime();

     B=A++;

     A.OutTime();

     B.OutTime();

}

 

Áõ°¡ ¿¬»êÀÚ´Â °ªÀ» 1 Áõ°¡½ÃÅ°´Âµ¥ ±¸Ã¼ÀûÀÎ Àǹ̴ °´Ã¼¿¡ µû¶ó Á¶±Ý¾¿ ´Ù¸£°Ô Á¤ÀÇµÉ °ÍÀÌ´Ù. º¹¼Ò¼ö °´Ã¼´Â ½Ç¼öºÎ¸¸ 1.0 Áõ°¡½ÃÅ°´Â °ÍÀÌ ÇÕ¸®ÀûÀÌ°í Position °´Ã¼´Â (x,y) ÁÂÇ¥¸¦ ¿À¸¥ÂÊ ¾Æ·¡·Î ÇÑÄ­ À̵¿½Ãų ¼öµµ ÀÖ°í x¸¸ Áõ°¡½ÃÅ°´Â °ÍÀ¸·Î Á¤ÀÇÇÒ ¼öµµ ÀÖ´Ù. Person °´Ã¼ÀÇ °æ¿ì´Â ÀûÀýÇÑ Áõ°¡ ´ë»óÀÌ ¾ø¾î ++ ¿¬»êÀÚ¿Í´Â Àß ¾î¿ï¸®Áö ¾Ê´Âµ¥ ±»ÀÌ ÇÏÀÚ¸é ³ªÀÌ Á¤µµ¸¦ Áõ°¡½Ãų ¼ö´Â ÀÖ´Ù.

½Ã°£ÀÎ °æ¿ì´Â Ãʸ¦ Áõ°¡½ÃÅ°´Â °ÍÀ¸·Î Á¤ÀÇÇÏ´Â °ÍÀÌ °¡Àå ÇÕ¸®ÀûÀÌ¸ç ±×·¡¼­ ¿¹Á¦ÀÇ operator ++ ¿¬»êÀÚ´Â sec ¸â¹ö¸¸ 1Áõ°¡½ÃÅ°´Â Çü½ÄÀ¸·Î ½Ã°£ °´Ã¼¿¡ ´ëÇØ ++ ¿¬»êÀ» Á¤ÀÇÇß´Ù. ÇÊ¿äÇÏ´Ù¸é ºÐÀ̳ª ½Ã¸¦ Áõ°¡½Ãų ¼öµµ ÀÖ´Ù. ++ ¿¬»êÀÚ´Â ÇÇ¿¬»êÀÚ¸¦ Çϳª¸¸ ÃëÇÏ´Â ´ÜÇ× ¿¬»êÀÚÀÌ¸ç ¿¹Á¦ÀÇ operator ++Àº ¸â¹ö ¿¬»êÀÚ ÇÔ¼ö·Î Á¤ÀǵǾúÀ¸¹Ç·Î ÀÌ ÇÔ¼ö¸¦ È£ÃâÇÏ´Â °´Ã¼ ÀÚ½ÅÀÌ ÇÇ¿¬»êÀÚ°¡ µÈ´Ù. µû¶ó¼­ ÀÌ ÇÔ¼ö´Â º°µµÀÇ Àμö¸¦ °¡Áú ÇÊ¿ä°¡ ¾ø´Ù. ¸¸¾à ++ ¿¬»êÀÚ¸¦ Àü¿ª ÇÔ¼ö·Î Á¤ÀÇÇÑ´Ù¸é º¯°æÇÒ ´ë»ó °´Ã¼ Çϳª¸¸À» Àμö·Î Àü´Þ¹ÞÀ¸¸é µÈ´Ù. ¹°·Ð °´Ã¼ÀÇ ¸â¹ö¸¦ ÀÚÀ¯·Ó°Ô Àбâ À§Çؼ­´Â ÇÁ·»µå ÁöÁ¤À» ÇØ¾ß ÇÑ´Ù.

 

Time &operator ++(Time &T) {

     T.sec++;

     T.min += T.sec/60;

     T.sec %= 60;

     T.hour += T.min/60;

     T.min %= 60;

     return T;

}

 

++ ¿¬»êÀڴ ȣÃâÇÑ °´Ã¼(Àü¿ª ÇÔ¼öÀÎ °æ¿ì Àμö·Î Àü´ÞµÈ °´Ã¼, ¾î·µç ÇÇ¿¬»êÀÚ)¸¦ Á÷Á¢ º¯°æÇϱ⠶§¹®¿¡ »ó¼ö¼ºÀ» °¡ÁöÁö ¾Ê´Â´Ù. ±×·¡¼­ operator ++() ÇÔ¼ö ´ÙÀ½¿¡ const¶ó´Â ÁöÁ¤ÀÌ ¾øÀ¸¸ç Àü¿ª ÇÔ¼ö·Î Á¤ÀÇÇÒ °æ¿ìµµ ÀμöÀÇ Å¸ÀÔÀº Time &¿©¾ßÁö const Time &°¡ µÇ¾î¼­´Â ¾ÈµÈ´Ù. ÀÌÇ× ¿¬»êÀÚµéÀº º¸Åë ÇÇ¿¬»êÀÚ¸¦ Àб⸸ Çϴµ¥ ºñÇØ ++, -- ´ÜÇ× ¿¬»êÀÚ´Â ÇÇ¿¬»êÀÚ¸¦ Á÷Á¢ º¯°æÇÏ´Â Á¡ÀÌ Á¶±Ý ´Ù¸£´Ù.

¿¬»êÀÚ ÇÔ¼öÀÇ ¸®ÅÏ Å¸ÀÔÀº Time &·Î µÇ¾î Àִµ¥ ++ ¿¬»êÀÚ°¡ ´Ü¼øÈ÷ °´Ã¼¸¦ 1 Áõ°¡½ÃÅ°±â¸¸ ÇÑ´Ù¸é ¸®ÅÏ°ªÀÌ ¾ø´Â void ÇüÀ¸·Î Á¤ÀÇÇÒ ¼öµµ ÀÖ´Ù. ±×·¯³ª ÀÌ·¸°Ô µÇ¸é ++A·Î A¸¦ 1 Áõ°¡½Ãų ¼ö´Â ÀÖÁö¸¸ B=++A ¿¬»ê¹®À¸·Î Áõ°¡µÈ °á°ú¸¦ ´Ù¸¥ °´Ã¼¿¡ ´ëÀÔÇÒ ¼ö´Â ¾ø´Ù. CÀÇ ¸ðµç ¿¬»ê¹®Àº ¸®ÅÏ°ªÀ» °¡Áö¸ç ±×·¡¼­ ¼ö½Ä³»¿¡¼­ ¿¬»ê¹®À» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÀÌ ¿ä±¸ Á¶°ÇÀ» ¸¸Á·½ÃÅ°±â À§ÇØ ++ ¿¬»êÀÚµµ °ªÀ» Áõ°¡½ÃŲ ÈÄ Áõ°¡µÈ °´Ã¼ ±× ÀÚü(*this)¸¦ ¸®ÅÏÇØ¾ß ÇÑ´Ù.

Àß ¾Ë°í ÀÖ°ÚÁö¸¸ Áõ°¨ ¿¬»êÀÚ´Â ´Ù¸¥ ¿¬»êÀÚ¿Í´Â ´Þ¸® ÀüÀ§Çü(prefix)°ú ÈÄÀ§Çü(postfix) µÎ °¡Áö Çü½ÄÀ¸·Î ¾µ ¼ö ÀÖÀ¸¸ç ¼ö½Ä³»¿¡¼­ »ç¿ëµÉ ¶§´Â ++¿¬»êÀÚÀÇ À§Ä¡¿¡ µû¶ó È¿°ú°¡ Á¶±Ý ´Ù¸£´Ù. °´Ã¼¿¡ ´ëÇؼ­µµ ¸¶Âù°¡Áö ±ÔÄ¢ÀÌ Àû¿ëµÇ¾î¾ß Çϴµ¥ ¹®Á¦´Â ÀüÀ§ÇüÀ̳ª ÈÄÀ§ÇüÀ̳ª µÑ ´Ù »ç¿ëµÇ´Â À§Ä¡¸¸ ´Ù¸¦ »ÓÀÌÁö ¿¬»êÀÚ ÇÔ¼öÀÇ À̸§Àº operator ++·Î µ¿ÀÏÇÏ´Ù´Â °ÍÀÌ´Ù. °Ô´Ù°¡ ÃëÇÏ´Â ÀμöÀÇ °³¼ö±îÁö °°À¸¹Ç·Î ÀüÀ§ÇüÀÇ ++ ¿¬»êÀÚ¿Í ÈÄÀ§ÇüÀÇ ++ ¿¬»êÀÚ¸¦ À̸§À̳ª Àμö ¸ñ·ÏÀ¸·Î ±¸ºÐÇÒ ¼ö ¾ø´Ù.

±×·¡¼­ C++ Ç¥ÁØÀ§¿øµéÀº ÀÌ µÎ Çü½ÄÀÇ Áõ°¡ ¿¬»êÀÚ¸¦ ±¸ºÐÇϱâ À§ÇØ Á» ¾î»öÇϱâ´Â ÇÏÁö¸¸ ´õ¹Ì Àμö¸¦ ¾²´Â ¹æ¹ýÀ» ¾²±â·Î °áÁ¤Çß´Ù. ÀüÀ§ÇüÀÇ ++ ¿¬»êÀÚ ÇÔ¼ö´Â Áõ°¡µÇ´Â °´Ã¼ ¿Ü¿¡´Â Àμö¸¦ ÃëÇÏÁö ¾ÊÀ¸¸ç ÈÄÀ§ÇüÀÇ ++ ¿¬»êÀÚ´Â ¿¬»ê ´ë»óÀÎ °´Ã¼ ¿Ü¿¡µµ Á¤¼öÇüÀÇ ´õ¹Ì Àμö¸¦ Çϳª ´õ ÃëÇϱâ·Î °áÁ¤ÇÑ °ÍÀÌ´Ù. ´çÀå »ç¿ëÇÏÁö ¾Ê´Â ÀμöÀÌÁö¸¸ ÀÌ Àμö°¡ ÀÖÀ½À¸·Î½á ¿À¹ö·ÎµùÀÌ ¼º¸³µÇ°í µÎ Çü½ÄÀÇ ++¿¬»êÀÚ ÇÔ¼ö¸¦ ÄÄÆÄÀÏ·¯°¡ ±¸ºÐÇÒ ¼ö ÀÖ´Ù.

ÄÄÆÄÀÏ·¯´Â Ç¥ÁØÀ§¿øµéÀÌ Á¤ÇÑ ±ÔÄ¢´ë·Î ++A ÇüÅÂÀÇ ½ÄÀ» ÄÄÆÄÀÏÇÒ ¶§´Â operator ++() ¸â¹ö ÇÔ¼ö¸¦ È£ÃâÇÏ°í A++ ÇüÅÂÀÇ ½ÄÀ» ÄÄÆÄÀÏÇÒ ¶§´Â operator ++(int) ¸â¹ö ÇÔ¼ö¸¦ ã´Â´Ù. ¾Æ¹«¸® Ç¥ÁØÀ̶ó ÇÏ´õ¶óµµ ÀÌ ºÎºÐÀº ´Ù¼Ò ±ò²ûÇÏÁö ¸øÇØ º¸À̴µ¥ ÀÌ´Â ÀÏÁ¾ÀÇ ¾à¼ÓÀ̱⠶§¹®¿¡ ¿ì¸®´Â ÀÌ´ë·Î ¿Ü¿ì°í ±ÔÄ¢´ë·Î ++ ¿¬»êÀÚ¸¦ ¿À¹ö·ÎµùÇØ¾ß ÇÑ´Ù. ±×·¡¼­ ¿¹Á¦¿¡¼­´Â operator ++() ÀüÀ§Çü Áõ°¡ ¸â¹ö ¿¬»êÀÚ ÇÔ¼ö¿Í operator ++(int dummy) ÈÄÀ§Çü Áõ°¡ ¸â¹ö ¿¬»êÀÚ ÇÔ¼ö¸¦ °°ÀÌ Á¤ÀÇÇÏ°í ÀÖ´Ù. ÈÄÀ§ÇüÀÇ Àμö ¸ñ·Ï¿¡¼­ dummy´Â ¾îÂ÷ÇÇ ÀÚ¸®¸¸ Â÷ÁöÇÏ°í »ç¿ëµÇÁö ¾Ê´Â ÀμöÀ̹ǷΠÀ̸§Àº »ý·«Çصµ »ó°ü¾øÀ¸¸ç int ŸÀÔ¸¸ ³²°Ü µÖµµ µÈ´Ù.

ÀüÀ§Çü°ú ÈÄÀ§ÇüÀº È¿°ú°¡ ´Ù¸£±â ¶§¹®¿¡ º»Ã¼¿Í ¸®ÅÏ Å¸ÀÔ¿¡ ÀÖ¾î Â÷ÀÌ°¡ ÀÖ´Ù. ÀüÀ§ÇüÀÇ Áõ°¡ ¿¬»êÀÚ´Â °´Ã¼ÀÇ secÀ» 1Áõ°¡½ÃÅ°°í ¿Ã¸²Ã³¸®ÇÑ ÈÄ Áõ°¡µÈ °´Ã¼ÀÇ ·¹ÆÛ·±½º(Time &)¸¦ ¸®ÅÏÇÑ´Ù. ÈÄÀ§ÇüÀÎ °æ¿ì´Â ÀÏ´Ü °ªÀ» ¸ÕÀú Æò°¡ÇÑ ÈÄ Áõ°¡½ÃÄÑ¾ß ÇϹǷΠÁõ°¡½ÃÅ°±â ÀüÀÇ °´Ã¼¸¦ Áö¿ªº¯¼ö R¿¡ ¹é¾÷ÇØ ³õ°í °ªÀ» Áõ°¡½ÃŲ ÈÄ RÀ» ¸®ÅÏÇÑ´Ù. Áö¿ªº¯¼öÀÇ ·¹ÆÛ·±½º¸¦ ¸®ÅÏÇÒ ¼ö´Â ¾øÀ¸¹Ç·Î ÈÄÀ§ÇüÀÇ ¸®ÅÏŸÀÔÀº TimeÀÌ´Ù. °ªÀ» Áõ°¡½ÃÅ°´Â ÄÚµå´Â ÀüÀ§ÇüÀÇ ++ ¿¬»êÀÚ¿¡ ÀÌ¹Ì ÀÛ¼ºµÇ¾î ÀÖÀ¸¹Ç·Î ++*this¸¦ È£ÃâÇÏ¸é µÈ´Ù. ½ÇÇà °á°ú´Â ´ÙÀ½°ú °°´Ù.

 

1:1:2

1:1:2

1:1:3

1:1:2

 

ÀüÀ§ÇüÀÏ ¶§(B=++A)´Â Áõ°¡µÈ °ªÀÌ ¸®ÅϵǹǷΠA¿Í B°¡ ¸ðµÎ Áõ°¡µÈ °ªÀ» °¡ÁöÁö¸¸ ÈÄÀ§ÇüÀ¸·Î »ç¿ëÇÒ ¶§(B=A++)´Â Áõ°¡µÇ±â ÀüÀÇ A°ªÀÌ ¸®ÅϵǹǷΠA¸¸ 1Áõ°¡ÇÏ°í B´Â Áõ°¡Çϱâ ÀüÀÇ °ªÀ» ´ëÀԹ޴´Ù. Á¤¼öÇüÀÇ ÈÄÀ§ Áõ°¨½Ä°ú È¿°ú°¡ µ¿ÀÏÇÏ´Ù. ¸¸¾à ÈÄÀ§ÇüÀÇ Áõ°¡ ¿¬»êÀÚ¸¦ Á¤ÀÇÇÏÁö ¾Ê°í A++ ÈÄÀ§ Áõ°¡½ÄÀ» »ç¿ëÇϸé ÀüÀ§ÇüÀ» ´ë½Å »ç¿ëÇÑ´Ù´Â °æ°í°¡ ¹ß»ýÇÑ´Ù. ¹Ý´ëÀÇ °æ¿ìµµ ¸¶Âù°¡ÁöÀε¥ ¼ö½Ä³»¿¡¼­ Áõ°¡ ¿¬»êÀÚ¸¦ »ç¿ëÇÑ´Ù¸é ÀÌ °æ°í´Â Àý´ë ¹«½ÃÇÒ ¼ö ¾ø´Ù. »ç¿ëÀÚ°¡ ±â´ëÇÏ´Â È¿°ú°¡ ´Ù¸£±â ¶§¹®ÀÌ´Ù. ÀüÀ§ÇüÀ» Á¤ÀÇÇßÀ¸¸é ÈÄÀ§Çüµµ ¹Ýµå½Ã Á¤ÀÇÇØ¾ß ÇÑ´Ù.

´ÙÀ½Àº µÎ Çü½ÄÀÇ ¸®ÅÏ Å¸ÀÔ¿¡ ´ëÇØ »ý°¢ÇØ º¸ÀÚ. ÀüÀ§ÇüÀº Time &¸¦ ¸®ÅÏÇÏ°í ÈÄÀ§ÇüÀº const TimeÀ» ¸®ÅÏÇϴµ¥ ÀüÀ§ÇüÀÌ ·¹ÆÛ·±½º¸¦ ¸®ÅÏÇØ¾ß ÇÏ´Â ÀÌÀ¯´Â ++++A °°Àº ½ÄÀÌ °¡´ÉÇØ¾ß Çϱ⠶§¹®ÀÌ´Ù. ++A°¡ ¸ÕÀú Æò°¡µÇ¾î A°¡ 1Áõ°¡ÇÏ°í ´Ù½Ã ++A°¡ ½ÇÇàµÇ¾î A¸¦ ÇÑ ¹ø ´õ Áõ°¡½ÃÅ°±â À§ÇØ ÀÌ ¿¬»êÀÚÀÇ ¸®ÅÏ Å¸ÀÔÀÌ ·¹ÆÛ·±½º¿©¾ß ÇÑ´Ù. ¸¸¾à ÀüÀ§ÇüÀÇ operator ++ÀÌ TimeÀ» ¸®ÅÏÇÑ´Ù¸é ++++A ¿¬»ê½ÄÀÌ ¾î¶»°Ô Æò°¡µÉ °ÍÀΰ¡ »ý°¢ÇØ º¸ÀÚ. ù ¹ø° È£ÃâÀº A¿¡ ´ëÇÑ È£ÃâÀ̹ǷΠA°¡ 1Áõ°¡ÇÏÁö¸¸ µÎ ¹ø° ÀÌÈĺÎÅÍ´Â ¸®ÅÏµÈ *thisÀÇ »çº»¿¡ ´ëÇÑ È£ÃâÀ̱⠶§¹®¿¡ A´Â ÇÑ ¹ø¹Û¿¡ Áõ°¡ÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù.

ÈÄÀ§ÇüÀÇ °æ¿ì´Â °ªÀ» ¸ÕÀú Æò°¡ÇÑ ÈÄ Áõ°¡ÇØ¾ß ÇϹǷΠ°´Ã¼ ÀÚü¸¦ ¸®ÅÏÇÒ ¼ö ¾øÀ¸¸ç °ª¸¸ ¸®ÅÏÇÒ ¼ö ÀÖ´Ù. µû¶ó¼­ Time &¸¦ ¸®ÅÏÇؼ­´Â ¾ÈµÇ¸ç ÀÌ·¸°Ô ÇÒ °æ¿ì Áö¿ªº¯¼öÀÇ ·¹ÆÛ·±½º¸¦ ¸®ÅÏÇÑ´Ù´Â °æ°í°¡ ¹ß»ýÇÒ °ÍÀÌ´Ù. »Ó¸¸ ¾Æ´Ï¶ó ¸®ÅÏµÈ Àӽà °´Ã¼¸¦ º¯°æÇÏ´Â °ÍÀº Àǹ̰¡ ¾øÀ¸¸ç A++++Àº ±ÝÁöµÇ¾î¾ß ÇÑ´Ù. ¸¸¾à ÈÄÀ§ÇüÀÇ ++ÀÌ »ó¼ö°¡ ¾Æ´Ñ TimeÀ» ¸®ÅÏÇÒ °æ¿ì A++++Àº Àû¹ýÇÑ ¹®ÀåÀÌ µÇÁö¸¸ ½ÇÁ¦·Î´Â 1¹Û¿¡ Áõ°¡ÇÏÁö ¾Ê¾Æ ¿Àµ¿ÀÛÀ» ÇÏ´Â °Íó·³ º¸ÀÏ °ÍÀÌ´Ù. ±×·¯¹Ç·Î ¾Æ¿¹ ¾ÖÃʺÎÅÍ ²Þµµ ²ÙÁö ¸øÇϵµ·Ï »ó¼ö °´Ã¼¸¦ ¸®ÅÏÇØ¾ß ÇÑ´Ù.

ÀüÀ§ÇüÀº ´Ü¼øÇÑ »ê¼ú½Ä »ÓÀε¥ ºñÇØ ÈÄÀ§ÇüÀº Àӽà °´Ã¼ »ý¼º, ÃʱâÈ­, ÀüÀ§Çü ++ È£Ãâ µî ¿©·¯ °¡Áö Ãß°¡ 󸮰¡ ÇÊ¿äÇÏ´Ù. ±×·¡¼­ Áõ°¡½ÃÅ°´Â µ¿ÀÛ¸¸À¸·Î º»´Ù¸é ÀüÀ§ÇüÀÌ ´õ ºü¸£°í È¿À²ÀûÀÌ¸ç °´Ã¼¸¦ ´Üµ¶À¸·Î Áõ°¡½Ãų ¶§´Â °¡±ÞÀûÀ̸é ÀüÀ§ÇüÀÇ ++¿¬»êÀÚ¸¦ ¾²´Â °ÍÀÌ À¯¸®ÇÏ´Ù. ¼ö½Ä³»¿¡¼­¶ó¸é ¹°·Ð µÎ ÇüÅÂÀÇ È¿°ú°¡ ´Ù¸£¹Ç·Î ÀûÇÕÇÑ Çü½ÄÀ» »ç¿ëÇØ¾ß ÇÑ´Ù. ±âº»ÇüÀÇ °æ¿ìµµ ¹°·Ð ÀüÀ§ÇüÀÌ ´õ À¯¸®Çϳª ÄÄÆÄÀÏ·¯´Â ´Üµ¶À¸·Î »ç¿ëµÇ´Â Áõ°¡ ¿¬»êÀÚ´Â ÀüÀ§ÇüÀ¸·Î ¹Ù²ã¼­ È£ÃâÇϹǷΠi++À̳ª ++i³ª µ¿ÀÏÇÏ´Ù. ´Ü ±âº»ÇüÀ̶ó ÇÏ´õ¶óµµ ¼ö½Ä³»¿¡¼­ »ç¿ëµÉ ¶§´Â ÀÌ·± ÃÖÀûÈ­¸¦ ÇÏÁö ¾Ê´Â´Ù.

Áõ°¡ ¿¬»êÀÚ´Â µÎ °¡Áö Çü½ÄÀÌ ÀÖ¾î ¿À¹ö·ÎµùÇϱⰡ Á¶±Ý ±î´Ù·Î¿îµ¥ ´ÙÀ½ µµÇ¥ÀÇ Áöħ´ë·Î¸¸ ¿øÇüÀ» ÀÛ¼ºÇÏ¸é µÈ´Ù. TÇü Ŭ·¡½º¿¡ ´ëÇØ ¸â¹ö, Àü¿ªÀÎ °æ¿ì¿Í ÀüÀ§, ÈÄÀ§ÇüÀÎ °æ¿ì °¢°¢¿¡ ´ëÇØ ++ ¿¬»êÀÚÀÇ ¿øÇüÀ» Á¤¸®ÇÏ¿´´Ù. ¿Ü¿ï ÇÊ¿ä´Â ¾ø°í(»ç½Ç Àß ¿Ü¿öÁöÁöµµ ¾Ê´Â´Ù) ÇÊ¿äÇÒ ¶§¸¶´Ù ÀÌ µµÇ¥¸¦ ÂüÁ¶Çϵµ·Ï ÇÏÀÚ.

 

 

¸â¹ö ¿¬»êÀÚ ÇÔ¼ö

Àü¿ª ¿¬»êÀÚ ÇÔ¼ö

ÀüÀ§Çü

T &T::operator ++()

T &operator ++(T &t)

ÈÄÀ§Çü

T T::operator ++(int)

T operator ++(T &t, int)

 

 ComplexPlusPlus

Complex Ŭ·¡½º¿¡ ++ ¿¬»êÀÚ¸¦ ÀüÀ§, ÈÄÀ§ÇüÀ¸·Î ¸ðµÎ Ãß°¡ÇØ º¸ÀÚ. °´Ã¼ ÀÚü¿¡ ´ëÇÑ ¿¬»êÀ̹ǷΠ¸â¹ö ¿¬»êÀÚ ÇÔ¼ö·Î ¸¸µå´Â °ÍÀÌ Æí¸®ÇÏ´Ù. º¹¼Ò¼ö¿¡ ´ëÇÑ Áõ°¡ ¿¬»êÀº ½Ç¼öºÎ¸¸ 1Áõ°¡ÇÏ´Â °ÍÀ¸·Î Á¤ÀÇÇÑ´Ù.