³×ÀÓ ½ºÆäÀ̽º±îÁö °øºÎÇßÀ¸¸é ÀÌÁ¦ C++ÀÇ ±âº» ¹®¹ýÀ» ¸ðµÎ ¸¶ÃÆ´Ù. ±×·¯³ª ¿©±â±îÁö °øºÎ¸¦ Çß´Ù°í Çؼ C++ ¹®¹ýÀ» ¸ðµÎ ´Ù »ìÆ캻 °ÍÀº ¾Æ´Ï¸ç ¾ÆÁ÷±îÁöµµ ÀϺΠºüÁø ¹®¹ýµéÀÌ ÀÖ´Ù. ÀÌ Ã¥Àº ÀÚ½À¼À̸ç ÇнÀÀÇ ¼ø¼¸¦ Áß¿ä½ÃÇÏ´Ùº¸´Ï Áß°£ Áß°£¿¡ ÀϺΠ°í±Þ ¹®¹ýµéÀ» ÀǵµÀûÀ¸·Î ´©¶ôÇß´Ù. ÀÌ ¹®¹ýÀº ¾î·Æ±âµµ ÇÏ°Å´Ï¿Í ³À̵µ¿¡ ºñÇØ ½Ç¿ë¼ºÀÌ ³ôÁö ¾Ê¾Æ óÀ½ °øºÎÇÏ´Â »ç¶÷¿¡°Ô´Â ¿ÀÈ÷·Á È¥¶õ¸¸ °¡Áß½ÃÅ°¸ç Èï¹Ì¸¦ ¶³¾î¶ß¸®°í ü·ÂÀ» ¼ÒÁøÄÉÇÏ¿© ÀüÅõ·Â¿¡ Å« ¹æÇØ°¡ µÈ´Ù. µ¶ÀÚµéÀÌ ÀÌ·± ³»¿ëÀ» ¾Ë¾Æ¼ ¼±º°ÇÒ ¼ö ÀÖ´Ù¸é ÁÁ°ÚÁö¸¸ óÀ½ ¹è¿ì´Â »ç¶÷ÀÌ ¹®¹ýÀÇ Á߿伺À» ÆÇ´ÜÇϱ⠾î·Á¿ì¹Ç·Î ±âº» ¹®¹ýÀ» ÀÍÈù ÈÄ¿¡ ½ÉÈ ÇнÀ ´Ü°è¿¡¼ º¼ ¼ö ÀÖµµ·Ï µÞºÎºÐ¿¡ µû·Î Á¤¸®Çß´Ù.
Àß »ç¿ëµÇÁö ¾Ê´Â ¹®¹ýµéÀ̱â´Â ÇÏÁö¸¸ ±×·¸´Ù°í Çؼ ÀüÇô ¾µ µ¥°¡ ¾ø´Â ¹®¹ýÀº ¾Æ´Ï´Ù. ¶§·Î´Â ÀÌ·± ¹®¹ýµéÀÌ ¿ä±äÇÏ°Ô È°¿ëµÇ´Â °÷µµ ÀÖ°í ¾Ë¾Æ µÎ¸é C++¾ð¾î¿Í °´Ã¼ ÁöÇâ¿¡ ´ëÇØ ´õ ±í°Ô ÀÌÇØÇÒ ¼ö ÀÖ´Â Àç¹ÌÀÖ´Â ³»¿ëµéµµ ¸¹´Ù. ´Ù¸¸ »ç¿ë ºóµµ°¡ ³·¾Æ C++À» óÀ½ºÎÅÍ ¼ø¼´ë·Î °øºÎÇÏ´Â »ç¶÷¿¡°Ô´Â ¾î·Á¿ö º¸ÀÌ°í Çʿ伺À» ´À³¢Áö ¸øÇϹǷΠÇнÀÀÇ È帧À» ¹æÇØÇÏÁö ¾Êµµ·Ï º°µµ·Î Á¤¸®ÇØ ³õÀº °Í »ÓÀÌ´Ù. C++¿¡ ´ëÇÑ °³³äÀ» ÀÍÈú ¶§´Â ÀÌ·± °í±Þ ¹®¹ýÀ» ¹«½ÃÇÏ´Â °ÍÀÌ ÁÁÀ¸¸ç ¾î´À Á¤µµ °æÇèÀÌ ½×ÀÌ¸é ±×¶§ ³»°ø Çâ»óÀ» À§ÇØ ÀÐ¾î º¸µµ·Ï ÇÏÀÚ.
½ÇÁ¦ ¼¼»ó¿¡ Á¸ÀçÇÏ´Â ¸ðµç »ç¹°µéÀº ÀÚ½ÅÀÌ °¡Áú ¼ö ÀÖ´Â Àû¹ýÇÑ ¼Ó¼º ¹üÀ§¸¦ °¡Áö°í ÀÖÀ¸¸ç ¹üÀ§¸¦ Áö³ªÄ¡°Ô ¹þ¾î³ª´Â »ç¹°Àº Á¦´ë·Î µÈ »ç¹°ÀÌ ¾Æ´Ï´Ù. ¿¹¸¦ µé¾î »ç¶÷ÀÇ ³ªÀÌ°¡ 2000»ìÀÏ ¼ö´Â ¾ø°í ¸ð´ÏÅÍÀÇ Å©±â°¡ 380ÀÎÄ¡¶ó°Å³ª -17ÀÎÄ¡°¡ µÉ ¼ö´Â ¾ø´Ù. ½Ç¼¼°èÀÇ »ç¹°À» ¸ðµ¨¸µÇÏ´Â °´Ã¼µµ ¸¶Âù°¡Áö·Î ÀûÀýÇÑ °ªÀ» °¡Áú ¶§¸¸ ÀǹÌÀÖ´Â °´Ã¼°¡ µÉ ¼ö ÀÖÀ¸¸ç °ªÀÌ Æ²¸®¸é °´Ã¼´Â ¹«È¿ÇØÁø´Ù. ¿¹¸¦ µé¾î ´ÙÀ½°ú °°Àº ¼±¾ð¹®À¸·Î °´Ã¼¸¦ »ý¼ºÇß´Ù°í ÇØ º¸ÀÚ.
Position Where(120,-100,'Z');
Person Grand(NULL,4900);
ÄÜ¼Ö È¸éÀº °¡·Î·Î 80, ¼¼·Î·Î 25ÀÇ ¹üÀ§¸¦ °¡Áö¸ç (120, -100)À̶ó´Â ÁÂÇ¥´Â Á¸ÀçÇÏÁö ¾ÊÀ¸¹Ç·Î ÀÌ·± ÁÂÇ¥¸¦ ³ªÅ¸³»´Â Position Ŭ·¡½ºÀÇ °´Ã¼ Where´Â ¹«È¿ÇÏ´Ù. ¶ÇÇÑ »ç¶÷À» Ç¥ÇöÇÏ´Â Person Ŭ·¡½ºÀÇ Grand °´Ã¼´Â À̸§ÀÌ ¾øÀ¸¸ç ³ªÀÌ°¡ ¹«·Á 4900»ìÀ̹ǷΠ½ÇÁ¦·Î Á¸ÀçÇÏ´Â »ç¶÷ÀÏ ¼ö ¾ø´Ù. ¸¶Âù°¡Áö·Î ³¯Â¥ °´Ã¼°¡ 13¿ù 38ÀÏ·Î Ãʱâȵȴٰųª ¸¶¿ì½º °´Ã¼ÀÇ ¹öÆ° ¼ö°¡ 101°³°¡ µÈ´Ù¸é ÀÌ ¿ª½Ã ¹«È¿ÇÑ °´Ã¼µéÀÌ´Ù.
¹«È¿ÇÑ °´Ã¼´Â ³í¸®ÀûÀ¸·Î À߸øµÇ¾úÀ» »Ó¸¸ ¾Æ´Ï¶ó Ä¡¸íÀûÀÎ ¿¡·¯ÀÇ ¿øÀÎÀÌ µÇ±âµµ ÇÑ´Ù. À§ ¿¹ÀÇ Grand °´Ã¼ÀÇ °æ¿ì À̸§ÀÌ NULLÀε¥ ÀÌ °´Ã¼ÀÇ À̸§À» Ãâ·ÂÇѴٰųª ±æÀ̸¦ Á¶»çÇѴٰųª ¶Ç´Â À̸§ ¹öÆÛ¸¦ º¯°æÇÏ°íÀÚ ÇÑ´Ù¸é ¾î¶»°Ô µÇ°Ú´Â°¡? ÇÁ·Î±×·¥ÀÇ ¸ðµç ³í¸®°¡ Á¤È®ÇÏ´Ù¸é ÀÌ·± ¸»µµ ¾ÈµÇ´Â °´Ã¼µéÀÌ ¸¸µé¾îÁú ¸®°¡ ¾ø°ÚÁö¸¸ Çö½ÇÀûÀ¸·Î ½Ç¼ö³ª ¶Ç´Â ºÒ°¡ÇÇÇÑ ¿¹¿Ü·Î ÀÌ·± °´Ã¼°¡ ¸¸µé¾îÁú °¡´É¼ºÀº Ç×»ó ÀÖ´Ù.
µû¶ó¼ Ŭ·¡½º´Â ÀÌ·± À߸øµÈ »óÅÂÀÇ °´Ã¼°¡ ¸¸µé¾îÁöÁö ¾Êµµ·Ï ½º½º·Î ¹æ¾îÇØ¾ß ÇÒ ÇÊ¿ä°¡ ÀÖ´Ù. °´Ã¼°¡ ÃʱâȵǴ ½ÃÁ¡Àº »ý¼ºÀÚ°¡ È£ÃâµÉ ¶§À̹ǷΠ»ý¼ºÀÚ¿¡¼ ÀμöÀÇ °ªÀ» º¸°í °ú¿¬ ±ÔÄ¢¿¡ ¸Â´Â °´Ã¼ÀÎÁö ¾Æ´ÑÁö¸¦ Á¡°ËÇÒ ¼ö ÀÖ´Ù. ±¸Á¶Ã¼´Â ¿ÜºÎ¿¡¼ ÁÖ´Â °ªÀ» ¼±ÅÃÀÇ ¿©Áö¾øÀÌ ÀúÀåÇϱ⸸ Çϴµ¥ ºñÇØ °´Ã¼´Â »ý¼ºÀÚ°¡ Á÷Á¢ ÃʱâÈÇϹǷΠ½º½º·ÎÀÇ ¹«°á¼ºÀ» Áöų ¼ö ÀÖ´Ù. °´Ã¼¸¦ ¹«È¿ÇÏ°Ô ¸¸µé °¡´É¼ºÀÌ ÀÖ´Â Àμö°¡ Àü´ÞµÇ¾úÀ» ¶§ »ý¼ºÀÚ´Â ¿©·¯ °¡Áö Á¶Ä¡¸¦ ÃëÇÒ ¼ö Àִµ¥ ¾î¶² ½ÄÀ¸·Î ÀÚ½ÅÀ» ¹æ¾îÇÒ ¼ö ÀÖ´ÂÁö °¡´ÉÇÑ ¹æ¹ýµéÀ» ¿°ÅÇØ º¸ÀÚ. ¾Æ·¡ÀÇ ÄÚµåµéÀº selfdefence ¿¹Á¦·Î ÀÛ¼ºµÇ¾î ÀÖÀ¸¹Ç·Î Çϳª¾¿ ÁÖ¼®À» Ç®¾î°¡¸ç Å×½ºÆ®ÇØ º¸¾Æ¶ó.
¨ç °¡Àå ½¬¿î ¹æ¹ýÀº ½ÃÅ°´Â´ë·Î ÇÏ°í º°µµÀÇ Á¶Ä¡¸¦ ÃëÇÏÁö ¾Ê´Â °ÍÀÌ´Ù. Á» ÀÌ»óÇÏ°Ô µé¸®°ÚÁö¸¸ ¶§·Î´Â ÀÌ·± ¹æ¹ýÀÌ °¡Àå Çö¸íÇÒ ¼öµµ ÀÖ´Ù. ¿Ö³ÄÇϸé ÀÌ·± °´Ã¼¸¦ ¸¸µç °÷¿¡¼ Àá½Ã ÈÄ °´Ã¼ÀÇ ÀÌ»ó µ¿ÀÛÀ» È®ÀÎÇÏ°í Ʋ·È´Ù´Â °ÍÀ» ¾Ë ¼ö ÀÖÀ¸¸ç µû¶ó¼ °ð ¸ðÁ¾ÀÇ Á¶Ä¡¸¦ ÃëÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù. ÀÌ·± ¿øÄ¢À» GIGO(Garbage In Garbage Out:±»ÀÌ ¹ø¿ªÇÏÀÚ¸é "´Ï°¡ À߸øÇßÀݾÆ")¶ó Çϴµ¥ ÀÔ·ÂÀÌ Æ²·ÈÀ¸´Ï Ʋ¸°´ë·Î µ¿ÀÛÇϵµ·Ï ³»¹ö·ÁµÐ´Ù´Â ¶æÀÌ´Ù.
¨è Á¶°ÇÀÌ ¸¸Á·µÇÁö ¾ÊÀ» °æ¿ì Ãʱâȸ¦ °ÅºÎÇÏ°í ¾²·¹±â°ªÀ» °¡Áöµµ·Ï ³» ¹ö·ÁµÐ´Ù. Position °´Ã¼ÀÇ °æ¿ì ¼¼ ÀԷ°ª Áß ¹®ÀÚ´Â ¾Æ¹«°ªÀ̳ª Çã¿ëÇÏ°í ÁÂÇ¥°ªÀº ÄÜ¼Ö È¸é ¾È¿¡ ÀÖ´ÂÁö¸¦ Á¡°ËÇÒ ¼ö ÀÖ´Ù. »ý¼ºÀÚÀÇ Äڵ带 ¼öÁ¤ÇÑ´Ù¸é ´ÙÀ½°ú °°¾ÆÁú °ÍÀÌ´Ù.
Position(int ax, int ay, char ach) {
if (ax >=0 && ax < 80 && ay >=0 && ay < 25) {
x=ax; y=ay; ch=ach;
}
}
ÀÌ·¸°Ô µÇ¸é °ªÀÌ À¯È¿ÇÒ ¶§¸¸ ÃʱâÈµÇ¸ç ±×·¸Áö ¾ÊÀ» °æ¿ì´Â ¹«½¼ °ªÀÏÁöµµ ¸ð¸£´Â ¾²·¹±â°ªÀ» °¡Áö°Ô µÈ´Ù. ÀÌ ¹æ¹ýÀº ù ¹ø° ¹æ¹ýº¸´Ù ¿ÀÈ÷·Á ´õ ¹«Ã¥ÀÓÇÑ ¹æ¹ýÀÌ´Ù. ¾²·¹±â°ªº¸´Ù´Â Â÷¶ó¸® ÀÔ·ÂµÈ Æ²¸°°ªÀ» °¡Áöµµ·Ï ÇÏ´Â °ÍÀÌ ´õ ³´´Ù.
¨é Ʋ¸° °ªÀÌ ÀԷµǾúÀ» ¶§ ¹«³ÇÑ °ªÀ¸·Î ¹Ù²ã¼ ÃʱâÈÇÑ´Ù. ÁÂÇ¥ÀÇ °æ¿ì ¿øÁ¡ÀÎ (0,0)ÀÌ °¡Àå ¹«³ÇÏ¸ç ±ÛÀÚ´Â °ø¹éÀ¸·Î ÃʱâÈÇÏ¸é µÉ °ÍÀÌ´Ù.
Position(int ax, int ay, char ach) {
if (ax >=0 && ax < 80 && ay >=0 && ay < 25) {
x=ax; y=ay; ch=ach;
} else {
x=y=0;
ch=' ';
}
}
ÀÌ·¸°Ô µÇ¸é ÀÏ´Ü °´Ã¼ ÀÚü´Â À¯È¿ÇØÁö¹Ç·Î ÀÌ»ó µ¿ÀÛÀ» ÇÒ À§ÇèÀº ¾ø¾îÁø´Ù. ±×·¯³ª ÀÌ °´Ã¼¸¦ ¸¸µç »ç¶÷Àº ÀÚ½ÅÀÌ °´Ã¼¸¦ À߸ø ¸¸µé¾ú´Ù´Â °ÍÀ» È®ÀÎÇϱ⠾î·Á¿ì¸ç Ʋ¸°Áöµµ ¸ð¸£°í ½ÇÇàµÉ °ÍÀÌ´Ù. GIGOÀÇ ¿øÄ¢¿¡ ¾î±ß³ª¹Ç·Î ¹Ù¶÷Á÷ÇÏÁö´Â ¾ÊÁö¸¸ Á¤¸»·Î ¹«³ÇÑ °ªÀÌ Á¸ÀçÇϴ Ŭ·¡½º¶ó¸é ÀÌ ¹æ¹ýÀ» ¾µ ¼öµµ ÀÖ´Ù.
¨ê Ʋ¸° ÀԷ¿¡ ´ëÇØ Àû±ØÀûÀÎ ¿¡·¯ 󸮸¦ ÇÑ´Ù. ÀÌ ¹æ¹ýÀÌ °¡Àå ÁÁ¾Æ º¸ÀÌ°ÚÁö¸¸ ¾ÈŸ±õ°Ôµµ »ý¼ºÀÚ¿¡¼ ÇÒ ¼ö ÀÖ´Â ¿¡·¯ 󸮿¡´Â ÇÑ°è°¡ ÀÖ´Ù. »ý¼ºÀ» °ÅºÎÇѴٰųª ½º½º·Î¸¦ Æı«ÇÏ´Â °ÍÀº ºÒ°¡´ÉÇѵ¥ ¿Ö³ÄÇϸé ÄÄÆÄÀÏ·¯°¡ »ý¼ºÀÚ¸¦ È£ÃâÇß´Ù´Â °ÍÀº »ý¼ºµÈ´Ù´Â ½ÅÈ£¸¦ º¸³½ °ÍÀÌÁö »ý¼ºÇصµ µÇ´À³Ä´Â Áú¹®À» ÇÑ °ÍÀÌ ¾Æ´Ï±â ¶§¹®ÀÌ´Ù. °Ô´Ù°¡ »ý¼ºÀÚ´Â ¸®ÅÏ°ªÀÌ ¾ø±â ¶§¹®¿¡ ¿¡·¯¸¦ º¸°íÇÒ ¹æ¹ýµµ ¾ø°í ¼³»ç ÀÖ´Ù ÇÏ´õ¶óµµ »ý¼ºÇÑ °÷¿¡¼ ÀÌ °ªÀ» Á¡°ËÇϱ⵵ ¾î·Æ´Ù. ±â²¯ÇØ¾ß ¿À·ù°¡ ÀÖ´Ù´Â ¸Þ½ÃÁö¸¦ Ãâ·ÂÇÏ´Â Á¤µµ¸¸ ÇÒ ¼ö ÀÖ´Ù.
Position(int ax, int ay, char ach) {
if (ax >=0 && ax < 80 && ay >=0 && ay < 25) {
x=ax; y=ay; ch=ach;
} else {
puts("¾ß! °ªÀÌ Æ²·ÈÀݾÆ. ´Ï Äڵ带 Á¡°ËÇØ ºÁ.");
}
}
½ÇÇàÁß¿¡ °©ÀÚ±â ÀÌ·± ¿¡·¯ ¸Þ½ÃÁö°¡ Ãâ·ÂµÇ¸é »ç¿ëÀÚ´Â ´çȲ½º·¯¿öÇÏ°ÚÁö¸¸ »ý¼ºÀÚ°¡ ¿¡·¯¿¡ ´ëÇØ ÃëÇÒ ¼ö ÀÖ´Â °¡Àå ÁÁÀº ´ëÃ¥ÀÌ ¹Ù·Î ¿¡·¯¸¦ ³ÃÅ ¾Ë¸®´Â °ÍÀÌ´Ù. °³¹ßÀÚ°¡ ÀÌ ¸Þ½ÃÁö¸¦ º»´Ù¸é ÀÚ½ÅÀÇ ½Ç¼ö¸¦ Áï½Ã ¼öÁ¤ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ¾îÂ÷ÇÇ °³¹ßÀÚ¿¡°Ô ¹ö±×´Â ÇÇÇÒ ¼ö ¾ø´Â ¼÷¸íÀ̶ó¸é ±× ¹ö±×¸¦ °¡±ÞÀûÀÌ¸é »¡¸®, Á¤È®ÇÏ°Ô ¾Ë ¼ö ÀÖµµ·Ï ÇÏ´Â °ÍÀÌ ÃÖ¼±ÀÇ ÇØ°áÃ¥ÀÌ´Ù. ½ÇÇàÁß¿¡ ¿¡·¯¸¦ º¸°íÇÏ´Â Á» ´õ °ø½ÄÀûÀÌ°í ±ÇÀåµÇ´Â ¹æ¹ýÀÌ ¹Ù·Î assert ÇÔ¼öÀÌ´Ù.
Position(int ax, int ay, char ach) {
assert(ax >=0 && ax < 80 && ay >=0 && ay < 25);
x=ax; y=ay; ch=ach;
}
assert ÇÔ¼ö´Â °ýÈ£¾ÈÀÇ Á¶°ÇÀÌ ¸¸Á·µÇÁö ¾ÊÀ» °æ¿ì ÇÁ·Î±×·¥À» Áï½Ã Á¾·áÇÏ°í ¾îµð°¡ ¾î¶»°Ô ¿Ö Ʋ·È´Ù´Â °ÍÀ» Ãâ·ÂÇÑ´Ù. ±×·¡¼ °³¹ßÀÚ¿¡°Ô ½Ç¼ö¸¦ È®½ÇÇÏ°Ô ¾Ë·Á ÃÖ´ëÇÑ ½Å¼ÓÇÏ°Ô ¹ö±×¸¦ °íÄ¥ ¼ö ÀÖµµ·Ï ÇÑ´Ù. Ʋ¸° Äڵ带 °¡Áö°í ³ªÁß¿¡ ¸»½éÀ» ºÎ¸± ¹Ù¿¡¾ß Â÷¶ó¸® Áö±Ý Á×¾î ¹ö¸®¶ó´Â Áö½ÃÀÎ °ÍÀÌ´Ù. Àß ¸¸µé¾îÁø Ŭ·¡½ºÀÇ ³»ºÎ¸¦ µé¿©´Ù º¸¸é ¿©±âÀú±â¿¡ assert(¶Ç´Â ASSERT)¹®ÀÌ ÀÖ´Â °ÍÀ» º¼ ¼ö Àִµ¥ À̴ Ŭ·¡½º °³¹ßÀÚ°¡ ½º½º·Î¸¦ ¹æ¾îÇϱâ À§ÇØ ÃÄ ³õÀº ÀÏÁ¾ÀÇ ¹ö±× Æ®·¦ÀÌ´Ù. ¿©·¯ºÐµéµµ ½ÇÁ¦ ÇÁ·ÎÁ§Æ®¸¦ ÇÑ´Ù¸é assert¸¦ °¡±ÞÀû ¸¹ÀÌ È°¿ëÇØ¾ß ÇÑ´Ù.
±×·¯³ª ÀÌ Ã¥ÀÇ ¿¹Á¦µéÀº assert¸¦ »ç¿ëÇÏÁö ¾ÊÀ¸¸ç Ʋ¸° ÀԷ¿¡ ´ëÇØ ¾Æ¹«·± Á¶Ä¡µµ ÃëÇÏÁö ¾Ê´Âµ¥ ÀÌ´Â ¿¹Á¦·Î¼ÀÇ º»ºÐÀ» Ãæ½ÇÈ÷ ¼öÇàÇϱâ À§ÇؼÀÏ »ÓÀÌ´Ù. ¿ø·ÐÀûÀÎ ¿¹Á¦¿¡ ¹ß»ý ºóµµ°¡ Èñ¹ÚÇÑ ¿¡·¯ 󸮹®À» ¿©±âÀú±â »ðÀÔÇÏ´Â °ÍÀº ¼³¸íÇÏ°íÀÚ ÇÏ´Â ³í¸®¿¡ ÁýÁßÇϴµ¥ ¹æÇØ°¡ µÈ´Ù. ±×·¯³ª ½ÇÀü¿¡¼´Â assert¸¦ ²À, ±×°Íµµ °¡±ÞÀûÀÌ¸é ¸¹ÀÌ ½á¾ß ÇÑ´Ù´Â °ÍÀ» ¸í½ÉÇϵµ·Ï ÇÏÀÚ. ÈçÈ÷ ÇÏ´Â ¸»·Î assert·Î µµ¹è¸¦ ÇØ ³ö¾ß Çϸç ÀÌ µµ¹èÁþÀÌ À§±âÀÇ ¼ø°£¿¡ Á¤¸» Å« ÈûÀÌ µÈ´Ù.
¨ë
C++ÀÌ ¾ð¾î Â÷¿ø¿¡¼ °¡Àå ±ÇÀåÇÏ´Â ¹æ¹ýÀº ¿¹¿Ü¸¦ ´øÁö´Â °ÍÀÌ´Ù. »ý¼ºÀÚ´Â ¸®ÅÏÀ» ÇÒ ¼ö ¾øÁö¸¸ ¿¹¿Ü¸¦ ´øÁú ¼ö´Â ÀÖ´Ù.
Position(int ax, int ay, char ach) {
if (ax < 0 || ax >= 80) {
throw ax;
}
if (ay < 0 || ay >= 25) {
throw ay;
}
x=ax; y=ay; ch=ach;
}
void main()
{
try {
Position Where(120,-100,'Z');
Where.OutPosition();
} catch(int a) {
printf("%d´Â È¸é ¹Ù±ùÀÇ ÁÂÇ¥ÀÔ´Ï´Ù.\n",a);
}
}
ÁÂÇ¥°¡ ¿øÇÏ´Â ¹üÀ§ ¹Ù±ùÀÏ °æ¿ì ÀÌ °ªÀ» ¿¹¿Ü·Î ´øÁ³´Ù. Á» ´õ »ó¼¼ÇÑ ¿¹¿Ü Á¤º¸¸¦ Àü´ÞÇÏ°í ½ÍÀ¸¸é ³»ºÎ¿¡ ¿¹¿Ü Ŭ·¡½º¸¦ Á¤ÀÇÇÏ°í ÀÌ Å¬·¡½ºÀÇ °´Ã¼¸¦ ´øÁö¸é µÈ´Ù. ¿¹¿Ü¸¦ ÀÏÀ¸Å³ ¼ö ÀÖ´Â °´Ã¼ »ý¼º¹®Àº try catch ºí·ÏÀ¸·Î °¨½Î¾ß ÇϹǷΠ´Ù¼Ò ¹ø°Å·Î¿î ¸éÀÌ ÀÖ±â´Â ÇÏ´Ù.
»ý¼ºÀÚ¿¡¼ ÀÚ½ÅÀ» ÃʱâÈÇÒ ¶§ »Ó¸¸ ¾Æ´Ï¶ó ½ÇÇàÁß¿¡ °´Ã¼ÀÇ »óŸ¦ º¯°æÇÏ´Â ¸â¹ö ÇÔ¼öµéµµ À߸øµÈ °ªÀ¸·ÎºÎÅÍ ÀÚ½ÅÀ» ¹æ¾îÇÒ ¼ö ÀÖ´Ù. »ç¿ëÀÚµéÀÌ Á¤È®ÇÑ »ç¿ë¹æ¹ýÀ» ¼÷ÁöÇÏÁö ¸øÇÑ »óÅ·Π°´Ã¼¸¦ ºÎÁÖÀÇÇÏ°Ô ´Ù·ê ¼öµµ Àֱ⠶§¹®¿¡ ¾ÈÀü¼ºÀ» ³ôÀ̱â À§ÇØ °´Ã¼´Â ¼¶¼¼ÇÑ ¿¡·¯ 󸮸¦ ÇØ¾ß ÇÑ´Ù. ¸â¹ö ÇÔ¼ö´Â °ªÀ» ¸®ÅÏÇÒ ¼öµµ ÀÖ°í °´Ã¼¸¦ Æı«ÇÒ ¼öµµ ÀÖÀ¸¹Ç·Î »ý¼ºÀÚº¸´Ù ÈξÀ ´õ ´Ù¾çÇÑ ¹æ¹ýÀ¸·Î ¿¡·¯¿¡ ´ëóÇÒ ¼ö ÀÖ´Ù.