{"id":2213,"date":"2008-08-02T04:46:00","date_gmt":"2008-08-02T04:46:00","guid":{"rendered":"http:\/\/192.168.0.71:9090\/?p=1745"},"modified":"2014-09-02T09:37:48","modified_gmt":"2014-09-02T00:37:48","slug":"xfile","status":"publish","type":"post","link":"https:\/\/talsu.net\/?p=2213","title":{"rendered":"[TCPL] C++ \ub458\ub7ec\ubcf4\uae30"},"content":{"rendered":"<p>&nbsp;<\/p>\n<p style=\"text-align: center;\"><span style=\"font-size: 20pt;\"><strong>The C++ Programming Language <\/strong><\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 16pt; color: #c00000;\"><strong>2\uc7a5 \uc6cc\ubc0d\uc5c5 : C++ \ub458\ub7ec\ubcf4\uae30 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt; color: gray;\"><strong><em>2.1 C++ \uc774\ub780 \ubb34\uc5c7\uc778\uac00?<\/em><\/strong> <\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\ubaa8\ub4e0 \uc6a9\ub3c4\uc5d0 \uc4f8\uc218 \uc788\uc73c\uba70 \uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d\uc5d0 \uac15\ud55c \ud504\ub85c\uadf8\ub798\ubc0d \uc5b8\uc5b4<\/p>\n<p>&nbsp;<\/p>\n<p><strong>C++\uc758 \uae30\ubcf8 \uc131\uaca9 <\/strong><\/p>\n<ul style=\"margin-left: 40pt;\">\n<li>\n<div style=\"text-align: justify;\">C\ub97c \uae30\ubcf8\uc73c\ub85c \ubc1c\uc804\uc2dc\ud0a8 \uc5b8\uc5b4<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\ub370\uc774\ud130 \ucd94\uc0c1\ud654\ub97c \uc9c0\uc6d0<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\uac1d\uccb4 \uc9c0\ud5a5 \ud504\ub85c\uadf8\ub798\ubc0d\uc744 \uc9c0\uc6d0<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\uc77c\ubc18\ud654 \ud504\ub85c\uadf8\ub798\ubc0d\uc744 \uc9c0\uc6d0<\/div>\n<\/li>\n<\/ul>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt; color: #0070c0;\"><strong>2.2 C++\ub294 \ud504\ub85c\uadf8\ub798\ubc0d \ud328\ub7ec\ub2e4\uc784\uc774 \ud55c\ub450 \uac1c\uac00 \uc544\ub2c8\ub2e4 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\uac1d\ucc44 \uc9c0\ud5a5 \ud504\ub85c\uadf8\ub798\ubc0d\uc740 &#8216;\ud6cc\ub96d\ud55c&#8217; \ud504\ub85c\uadf8\ub7a8\uc744 \uc9dc\uac8c \ud574 \uc8fc\ub294 \ud328\ub7ec\ub2e4\uc784(paradigm)\uc911 \ud558\ub098 \uc774\ub2e4.<\/p>\n<p>\uc5b4\ub5a4 \ud504\ub85c\uadf8\ub798\ubc0d \uc5b8\uc5b4\uac00 \uc5b4\ub5a4 \ud504\ub85c\uadf8\ub798\ubc0d \uc2a4\ud0c0\uc77c\uc744 \uc9c0\uc6d0\ud55c\ub2e4\uace0 \ub9d0\ud560 \uc218 \uc788\uc73c\ub824\uba74 \uadf8 \uc2a4\ud0c0\uc77c\uc744 \ud3b8\ud558\uac8c(\uc27d\uace0, \uc548\uc804\ud558\uace0, \ud6a8\uc728\uc801\uc73c\ub85c) \uc4f8 \uc218 \uc788\ub3c4\ub85d \ud558\ub294 \uc5b8\uc5b4\uc801 \uc7a5\uce58\uac00 \ub4b7\ubc1b\uce68 \ub418\uc5b4\uc57c \ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>\ud504\ub85c\uadf8\ub798\ubc0d \uc2a4\ud0c0\uc77c\uc744 \uc9c0\uc6d0\ud558\uae30 \uc704\ud55c \uc870\uac74 <\/strong><\/p>\n<ul style=\"margin-left: 40pt;\">\n<li>\n<div style=\"text-align: justify;\">\ubaa8\ub4e0 \uae30\ub2a5\uc740 \uae54\ub054\ud558\uace0 \uc138\ub828\ub418\uac8c \uc5b8\uc5b4\uc5d0 \ub179\uc544 \uc788\uc5b4\uc57c \ud568.<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\ubcc4\ub3c4\uc758 \uae30\ub2a5\uc774 \ud544\uc694\ud560 \uac83 \uac19\uc740 \ubb38\uc81c\uc5d0\ub3c4 \uae30\uc874\uc758 \uae30\ub2a5\ub4e4\uc744 \uc870\ud569\ud574\uc11c \ud574\uacb0\ud560 \uc218 \uc788\uc5b4\uc57c \ud568.<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\uc774\ub984\ub9cc \ubc88\uc9c0\ub974\ub974 \ud558\uace0 \ud2b9\uc218\ud55c \uc6a9\ub3c4\ub85c \ub9c8\ub828\ub41c \uae30\ub2a5\uc740 \ucd5c\ub300\ud55c \uc801\uc5b4\uc57c \ud568.<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\uae30\ub2a5\uc758 \uad6c\ud604\uc740 \uadf8 \uae30\ub2a5\uc744 \uc4f0\uc9c0 \uc54a\uc740 \ud504\ub85c\uadf8\ub7a8\uc5d4 \ud070 \uc624\ubc84\ud5e4\ub4dc\ub97c \uc8fc\uc9c0 \uc54a\ub3c4\ub85d \ud574\uc57c \ud568.<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\uc5b8\uc5b4\uc5d0\uc11c \uc81c\uacf5\ub418\ub294 \uae30\ub2a5 \uc911 \ud655\uc2e4\ud55c \uba87 \uac1c\ub9cc \uc54c\uc544\ub3c4 \ud504\ub85c\uadf8\ub7a8\uc744 \uc791\uc131\ud560 \uc218 \uc788\uc5b4\uc57c \ud568.<\/div>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><strong>C++\uc758 \ud504\ub85c\uadf8\ub798\ubc0d \uc2a4\ud0c0\uc77c <\/strong><\/p>\n<p>\uc808\ucc28\uc801 \ud504\ub85c\uadf8\ub798\ubc0d &#8211; \uac1d\uccb4 \uc9c0\ud5a5 \ud504\ub85c\uadf8\ub798\ubc0d &#8211; \uc77c\ubc18\ud654 \ud504\ub85c\uadf8\ub798\ubc0d<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt; color: #0070c0;\"><strong>2.3 \uc808\ucc28\uc801 \ud504\ub85c\uadf8\ub798\ubc0d <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p><strong>\uc808\ucc28\uc801 \ud504\ub85c\uadf8\ub798\ubc0d\uc758 \ud328\ub7ec\ub2e4\uc784 <\/strong><\/p>\n<p>&#8211; \ubb38\uc81c \ud574\uacb0\uc5d0 \uc801\ud569\ud55c \ucc98\ub9ac \uc808\ucc28\ub97c \uc815\ud558\uace0 \ucc3e\uc744 \uc218 \uc788\ub294 \ucd5c\uc120\uc758 \uc54c\uace0\ub9ac\uc998\uc744 \uad6c\uc0ac\ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>\ub300\uac8c \ud568\uc218\uc5d0 \uc778\uc790\ub97c \uc804\ub2ec\ud558\uace0 \ud568\uc218\ub85c\ubd80\ud130 \uac12\uc744 \ubc18\ud658 \ud558\ub294 \uba54\ucee4\ub2c8\uc998\uc774 \uc81c\uacf5\ub418\ub294 \uac83\uc774 \ubcf4\ud1b5\uc774\ub2e4.<\/p>\n<p>\ub2e4\uc74c\uc740 \uc81c\uacf1\uadfc\uc744 \uacc4\uc0b0\ud558\ub294 \ud568\uc218 \uc774\ub2e4.<\/p>\n<pre class=\"lang:c++ decode:true \">#include &lt;iostream.h&gt; \r\n\r\ndouble square_root(double num) \/\/square_root\ud568\uc218\uc5d0 double\uac12\uc744 \ub123\uc73c\uba74 \uc81c\uacf1\uadfc\uc774 double\uac12\uc73c\ub85c \ubc18\ud658 \ub41c\ub2e4. \r\n{ \r\n\/\/\uc81c\uacf1\uadfc \uacc4\uc0b0\uc744 \uc704\ud55c \ucf54\ub4dc \r\n} \r\n\r\nvoid main() \r\n{ \r\ndouble number; \/\/\uc81c\uacf1\uadfc\uc744 \uad6c\ud558\uae30 \uc704\ud55c double\ubcc0\uc218 \r\ncout&lt;&lt;\" Enter the number : \"; \r\ncin&gt;&gt;number; \/\/\uc81c\uacf1\uadfc\uc744 \uad6c\ud558\uace0\uc790 \ud558\ub294 \uac12\uc744 \uc785\ub825. \r\ncout&lt;&lt;\"n\"&lt;&lt;square_root(number); \/\/\ud568\uc218\uc5d0 \uac12\uc744 \ub123\uc5b4 \ubc18\ud658\ud55c\ub2e4. \r\n}\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p>2.3.1 \ubcc0\uc218\uc758 \uc0b0\uc220 \uc5f0\uc0b0<\/p>\n<p>&nbsp;<\/p>\n<p>\ubaa8\ub4e0 \uc774\ub984\uacfc \ud45c\ud604\uc2dd\uc5d0\ub294 \uc5b4\ub5a4 \uc5f0\uc0b0\uc774 \uc218\ud589\ub420\uc9c0 \uc815\ud574\uc8fc\ub294 \ud0c0\uc785\uc774\ub780 \uac83\uc774 \ubd99\ub294\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>C++\uc758 \ub2e4\uc591\ud55c \ud0c0\uc785\ub4e4 \uc911 \uba87 \uac00\uc9c0 <\/strong><\/p>\n<div style=\"text-align: center;\">\n<table style=\"border-collapse: collapse;\" border=\"0\">\n<colgroup>\n<col style=\"width: 67px;\" \/>\n<col style=\"width: 227px;\" \/>\n<col style=\"width: 139px;\" \/>\n<col style=\"width: 132px;\" \/><\/colgroup>\n<tbody valign=\"top\">\n<tr style=\"background: #9bbb59;\">\n<td style=\"padding-right: 7px; border-top: #9bbb59 1pt solid; padding-left: 7px; border-left: #9bbb59 1pt solid;\" colspan=\"2\"><span style=\"color: white;\"><strong>\ud0c0\uc785<\/strong><\/span><\/td>\n<td style=\"padding-right: 7px; border-top: #9bbb59 1pt solid; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\"><span style=\"color: white;\"><strong>\ud06c\uae30<\/strong><\/span><\/td>\n<td style=\"border-right: #9bbb59 1pt solid; padding-right: 7px; border-top: #9bbb59 1pt solid; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\"><span style=\"color: white;\"><strong>\uc0ac\uc6a9\ubc95<\/strong><\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: #9bbb59 1pt solid; border-bottom: #9bbb59 1pt solid;\"><strong>bool<\/strong><\/td>\n<td style=\"padding-right: 7px; border-top: medium none; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">\ubd88(Boolean)<\/td>\n<td style=\"padding-right: 7px; border-top: medium none; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">1 byte<\/td>\n<td style=\"border-right: #9bbb59 1pt solid; padding-right: 7px; border-top: medium none; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">True, false<\/td>\n<\/tr>\n<tr>\n<td style=\"padding-right: 7px; padding-left: 7px; border-left: #9bbb59 1pt solid; border-bottom: #9bbb59 1pt solid;\"><strong>char<\/strong><\/td>\n<td style=\"padding-right: 7px; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">\ubb38\uc790(character)<\/td>\n<td style=\"padding-right: 7px; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">1 byte<\/td>\n<td style=\"border-right: #9bbb59 1pt solid; padding-right: 7px; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">&#8216;k&#8217;, &#8216;h&#8217;, &#8216;j&#8217;, &#8216;4&#8217;<\/td>\n<\/tr>\n<tr>\n<td style=\"padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: #9bbb59 1pt solid; border-bottom: #9bbb59 1pt solid;\"><strong>int<\/strong><\/td>\n<td style=\"padding-right: 7px; border-top: medium none; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">\uc815\uc218(integer)<\/td>\n<td style=\"padding-right: 7px; border-top: medium none; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">2 or 4 bytes<\/td>\n<td style=\"border-right: #9bbb59 1pt solid; padding-right: 7px; border-top: medium none; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">1, 342, 6342<\/td>\n<\/tr>\n<tr>\n<td style=\"padding-right: 7px; padding-left: 7px; border-left: #9bbb59 1pt solid; border-bottom: #9bbb59 1pt solid;\"><strong>double<\/strong><\/td>\n<td style=\"padding-right: 7px; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">\ubc30\uc815\ubc00\ub3c4 \ubd80\ub3d9\uc18c\uc218\uc810\uc2e4\uc218<\/td>\n<td style=\"padding-right: 7px; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">8 bytes<\/td>\n<td style=\"border-right: #9bbb59 1pt solid; padding-right: 7px; padding-left: 7px; border-bottom: #9bbb59 1pt solid;\">3.14, 29348.0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p style=\"text-align: right;\">*\ucef4\ud4e8\ud130\ub098 \ucef4\ud30c\uc77c\ub7ec\uc5d0 \ub530\ub77c \ud06c\uae30\uac00 \ub2e4\ub97c \uc218 \uc788\uc74c<\/p>\n<p>&nbsp;<\/p>\n<p>\uc774\ub7f0 \ud0c0\uc785\ub4e4\uc5d0 \ub300\ud574 \uacc4\uc0b0\uc744 \ucc98\ub9ac\ud560 \ub54c \ub2e4\uc74c\uacfc \uac19\uc740 \uc0b0\uc220 \uc5f0\uc0b0\uc790\uc640 \ube44\uad50 \uc5f0\uc0b0\uc790\uac00 \uc0ac\uc6a9\ub41c\ub2e4.<\/p>\n<div style=\"text-align: center;\">\n<table style=\"border-collapse: collapse;\" border=\"0\">\n<colgroup>\n<col style=\"width: 38px;\" \/>\n<col style=\"width: 130px;\" \/>\n<col style=\"width: 38px;\" \/>\n<col style=\"width: 123px;\" \/><\/colgroup>\n<tbody valign=\"top\">\n<tr style=\"background: #4f81bd;\">\n<td style=\"border-right: medium none; padding-right: 7px; border-top: #7ba0cd 1pt solid; padding-left: 7px; border-left: #7ba0cd 1pt solid; border-bottom: #7ba0cd 1pt solid;\" colspan=\"2\"><span style=\"font-size: 10pt; color: white;\"><strong>\uc0b0\uc220 \uc5f0\uc0b0\uc790<\/strong><\/span><\/td>\n<td style=\"border-right: #7ba0cd 1pt solid; padding-right: 7px; border-top: #7ba0cd 1pt solid; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\" colspan=\"2\"><span style=\"font-size: 10pt; color: white;\"><strong>\ube44\uad50 \uc5f0\uc0b0\uc790<\/strong><\/span><\/td>\n<\/tr>\n<tr style=\"background: #d3dfee;\">\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: #7ba0cd 1pt solid; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\"><strong>+<\/strong><\/span><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">\ub367\uc148<\/span><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">==<\/span><\/td>\n<td style=\"border-right: #7ba0cd 1pt solid; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">\uac19\uc740\uac00?<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: #7ba0cd 1pt solid; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\"><strong>&#8211;<\/strong><\/span><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">\ube84\uc148<\/span><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">!=<\/span><\/td>\n<td style=\"border-right: #7ba0cd 1pt solid; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">\ub2e4\ub978\uac00?<\/span><\/td>\n<\/tr>\n<tr style=\"background: #d3dfee;\">\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: #7ba0cd 1pt solid; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\"><strong>*<\/strong><\/span><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">\uacf1\uc148<\/span><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">&lt;<\/span><\/td>\n<td style=\"border-right: #7ba0cd 1pt solid; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">\uc791\uc740\uac00<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: #7ba0cd 1pt solid; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\"><strong>\/<\/strong><\/span><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">\ub098\ub217\uc148<\/span><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">&gt;<\/span><\/td>\n<td style=\"border-right: #7ba0cd 1pt solid; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">\ud070\uac00?<\/span><\/td>\n<\/tr>\n<tr style=\"background: #d3dfee;\">\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: #7ba0cd 1pt solid; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\"><strong>%<\/strong><\/span><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">\ub098\uba38\uc9c0<\/span><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">&lt;=<\/span><\/td>\n<td style=\"border-right: #7ba0cd 1pt solid; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">\uc791\uac70\ub098 \uac19\uc740\uac00?<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: #7ba0cd 1pt solid; border-bottom: #7ba0cd 1pt solid;\"><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><\/td>\n<td style=\"border-right: medium none; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">&gt;=<\/span><\/td>\n<td style=\"border-right: #7ba0cd 1pt solid; padding-right: 7px; border-top: medium none; padding-left: 7px; border-left: medium none; border-bottom: #7ba0cd 1pt solid;\"><span style=\"font-size: 10pt;\">\ud06c\uac70\ub098 \uac19\uc740\uac00<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>&nbsp;<\/p>\n<p>\ub300\uc785 \uc5f0\uc0b0\uacfc \uc0b0\uc220 \uc5f0\uc0b0\uc744 \uae30\ubcf8 \uc81c\uacf5 \ud0c0\uc785\uc744 \uac00\uc9c0\uace0 \uc218\ud589 \ud560 \uacbd\uc6b0\uc5d0\ub294, \ub2e4\ub978 \ud0c0\uc785\uc744 \uc4f0\ub354\ub77c\uace0 \uc790\uc720\ub86d\uac8c \uc11e\uc5b4 \uc4f8 \uc218 \uc788\ub3c4\ub85d \uc801\uc808\ud55c \ud0c0\uc785 \ubcc0\ud658\uc774 \ub0b4\ubd80 \uc801\uc73c\ub85c \uc774\ub8e8\uc5b4\uc9c4\ub2e4.<\/p>\n<p>\ub2e4\uc74c\uc740 \ud0c0\uc785 \ubcc0\ud658\uc774 \uc774\ub8e8\uc5b4\uc9c0\ub294 \uc608\uc81c\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;#include &lt;iostream.h&gt; void main () { double a = 2.2; \/\/a\ub294 double\ud615\uc73c\ub85c \uc18c\uc218\uc810 \uae4c\uc9c0 \ud45c\uc2dc \uac00\ub2a5 int b = 7; \/\/b\ub294 int\ud615 cout&lt;&lt;&#8220;a : &#8220;&lt;&lt;a; \/\/a\uc758 \ucd08\uae30\uac12 cout&lt;&lt;&#8220;nb : &#8220;&lt;&lt;b; \/\/b\uc758 \ucd08\uae30\uac12 cout&lt;&lt;&#8220;nnn&#8221;; a = a + b; \/\/a \uc5d0 a\uc640 b\ub97c \ub354\ud55c \uac12\uc744 \ub123\ub294\ub2e4.(2.2+7) cout&lt;&lt;&#8220;nafter &#8212;&#8211; a = a + b :&#8221;; cout&lt;&lt;&#8220;na : &#8220;&lt;&lt;a; \/\/a \ub294 9.2\uac00 \ub418\uc5b4 \uc788\uc74c cout&lt;&lt;&#8220;nb : &#8220;&lt;&lt;b; \/\/b \ub294 7 cout&lt;&lt;&#8220;nnn&#8221;; b = a * b; \/\/b \uc5d0 a\uc640 b\ub97c \uacf1\ud55c \uac12\uc744 \ub123\ub294\ub2e4.(9.2 * 7) cout&lt;&lt;&#8220;nafter &#8212;&#8211; b = a * b :&#8221;; cout&lt;&lt;&#8220;na : &#8220;&lt;&lt;a; \/\/a \ub294 9.2 cout&lt;&lt;&#8220;nb : &#8220;&lt;&lt;b; \/\/b \ub294 64.4\uac00 \ub418\uc5b4\uc57c \ud558\uc9c0\ub9cc int\ud0c0\uc785\uc774\ubbc0\ub85c \ud0c0\uc785 \ubcc0\ud658\uc774 \uc774\ub8e8\uc5b4\uc838 64\uac00 \ucd9c\ub825 \ub41c\ub2e4. } &lt;\/TEXTAREA&gt;<\/p>\n<p>b\uc758 int \ud0c0\uc785\uc5d0 \ub9de\uac8c \ubcc0\ud658 \ub418\uc5c8\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.3.2 \uc870\uac74\uac80\uc0ac \ubc0f \ub8e8\ud504 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>C++ \uc5d0\uc11c\ub294 \ubd84\uae30(selection)\uc640 \ub8e8\ud504\ucc98\ub9ac(looping)\ub97c \ub098\ud0c0\ub0bc \uc218 \uc788\ub294 \uad6c\ubb38\ub4e4\uc774 \uc788\ub2e4.<\/p>\n<p>\ub2e4\uc74c\uc740 \uac04\ub2e8\ud55c \uc785\ub825\uc744 \ubc1b\uc544 \uadf8 \uc751\ub2f5\uc744 \ub098\ud0c0\ub0b4\ub294 \ubd88(bool)\uac12\uc744 \ud45c\uc2dc\ud558\ub294 \uc608\uc81c\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;#include &lt;iostream.h&gt; bool accept( ) { char answer = 0; \/\/\ubb38\uc790 \ubcc0\uc218 cout&lt;&lt;&#8220;Do you want to stop (y or n) ?n&#8221;; \/\/\uc9c8\ubb38 \ucd9c\ub825 cin&gt;&gt;answer; \/\/\ub300\ub2f5\uc744 \uc77d\ub294\ub2e4. if(answer == &#8216;y&#8217;) return true; \/\/&#8217;y&#8217; \uc774\uba74 1 (true)\uc744 \ubc18\ud658 return false; \/\/&#8217;y&#8217;\uac00 \uc544\ub2c8\uba74 0 (false)\uc744 \ubc18\ud658 } void main( ) { bool true_false = accept(); \/\/bool\ubcc0\uc218\uc5d0 accept \ud568\uc218\uac12\uc744 \uc800\uc7a5 cout&lt;&lt;true_false; \/\/true, false\uc5d0 \ub530\ub77c 1, 0 \uc744 \ucd9c\ub825 } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc704\uc758 \uc608\uc81c \uc5d0\uc11c <span style=\"font-size: 10pt;\"><strong><em>accept <\/em><\/strong><\/span>\ud568\uc218\ub97c n\uc744 \ubc1b\uc544\ub4e4\uc600\uc744 \uacbd\uc6b0\uae4c\uc9c0 \uace0\ub824\ud558\uba74 \uc870\uae08 \ub354 \uc9dc\uc784\uc0c8 \uc788\uac8c \ub41c\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;bool accept2() { char answer =0; cout&lt;&lt;&#8220;Do you want to stop (y or n) ?n&#8221;; cin&gt;&gt;answer; switch(answer) { case &#8216;y&#8217;: return true; \/\/&#8217;y&#8217; \uc774\uba74 1 (true)\uc744 \ubc18\ud658 case &#8216;n&#8217;: return false; \/\/&#8217;n&#8217; \uc774\uba74 0 (false)\uc744 \ubc18\ud658 default: cout&lt;&lt;&#8220;I&#8217;ll take that for a no.n&#8221;; return false; \/\/&#8217;y&#8217;. &#8216;n&#8217;\ub458 \ub2e4 \uc544\ub2d0 \ub54c\ub294 \uba54\uc2dc\uc9c0\uc640 \ud568\uaed8 0 (false)\uc744 \ubc18\ud658 } } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc704 \uc608\uc81c\uc758 switch\ubb38\uc740 \uc0c1\uc218\uc758 \uc9d1\ud569\uc5d0 \ub300\ud574 \uc5b4\ub5a4 \uac12\uc744 \uac80\uc0ac\ud558\ub294 \uc870\uac74\ubb38\uc774\ub2e4. &#8216;case \uc0c1\uc218&#8217;\ub294 \uc11c\ub85c \uacb9\uce58\uc9c0 \uc54a\uc544\uc57c \ud558\uace0 \uac80\uc0ac\ud558\ub294 \uac11\uc774 \uc5b4\ub5a4 \uc0c1\uc218\uc5d0\ub3c4 \ud574\ub2f9 \ud558\uc9c0 \uc54a\uc73c\uba74 default\ucabd\uc73c\ub85c \ucc98\ub9ac \ud750\ub984\uc774 \uc624\uac8c \ub41c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>\uc704 \uc608\uc81c\uc5d0 \ub8e8\ud504\ub97c \uc801\uc6a9\ud55c\ub2e4\uba74 \uc0ac\uc6a9\uc790\uac00 \uba87 \ubc88\uc758 \uc2dc\ub3c4\ub97c \ud560\uc218\ub85d \uace0\uce60 \uc218 \uc788\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;bool accept3( ) { int tries = 1; \/\/\uc2dc\ub3c4 \ud69f\uc218 \uce74\uc6b4\ud2b8\ub97c \uc704\ud55c \ubcc0\uc218 while (tries&lt;4) \/\/tries \uac12\uc774 4\ubcf4\ub2e4 \uc791\uc744\ub54c \uc544\ub798\ub97c \ucc98\ub9ac { cout&lt;&lt;&#8220;Do you want to stop (y or n) ?n&#8221;; char answer = 0; cin &gt;&gt; answer; switch(answer) { case &#8216;y&#8217;: return true; \/\/&#8217;y&#8217;\uc77c\ub54c true\uac12\uc744 \ubc18\ud658\ud558\uace0 \ub098\uc628\ub2e4. case &#8216;n&#8217;: return false; \/\/&#8217;n&#8217;\uc77c\ub54c false\uac12\uc744 \ubc18\ud658\ud558\uace0 \ub098\uc628\ub2e4. default: cout&lt;&lt;&#8220;Sorry, only &#8216;y&#8217; or &#8216;n&#8217;n&#8221;; \/\/&#8217;y&#8217; , &#8216;n&#8217; \ub458\ub2e4 \uc544\ub2d0\ub54c \ubcf4\ub0b4\ub294 \uba54\uc138\uc9c0 tries = tries++; \/\/tries\ubcc0\uc218\uc5d0 1\uc744 \ub354\ud55c\ub2e4\uc74c \ub2e4\uc2dc \ucc98\uc74c\uc73c\ub85c \ub3cc\uc544\uac04\ub2e4. } } cout&lt;&lt;&#8220;I&#8217;ll take that for a no.n&#8221;; return false; \/\/1~3\uae4c\uc9c0 3\ubc88\uc774 \ubc18\ubcf5\ub418\uc5b4 tries\ubcc0\uc218\uac00 4\uac00 \ub418\uba74 while\ubb38\uc744 \ube60\uc838\ub098\uc640 \uba54\uc2dc\uc9c0\ub97c \ubcf4\ub0b8 \ud6c4 false\ub97c \ubc18\ud658\ud55c\ub2e4. }&lt;\/TEXTAREA&gt;<\/p>\n<p>\uc704 \uc608\uc81c\uc5d0\uc11c while\ubb38\uc740 \uc870\uac74\uc774 \uac70\uc9d3(false)\uc774 \ub420 \ub54c\uae4c\uc9c0 \uc2e4\ud589\ud558\uac8c \ub9cc\ub4dc\ub294 \uad6c\ubb38\uc774\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.3.3 \ud3ec\uc778\ud130\uc640 \ubc30\uc5f4 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p><strong>\ubc30\uc5f4\uc758 \uc120\uc5b8<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;char k[4]; \/\/\ubb38\uc790 4\uac1c\uc758 \ubc30\uc5f4 &lt;\/TEXTAREA&gt;<\/p>\n<p>&#8211; char\ud0c0\uc785 4\uac1c\uac00 \uc120\uc5b8 \ub418\uc5c8\ub2e4. ( k[0], k[1], k[2], k[3] )<\/p>\n<p><strong>\ud3ec\uc778\ud130\uc758 \uc120\uc5b8<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;char *p; \/\/\ubb38\uc790\ub97c \uac00\ub9ac\ud0a4\ub294 \ud3ec\uc778\ud130 &lt;\/TEXTAREA&gt;<\/p>\n<p>&#8211; char \ud0c0\uc785\uc758 \uac1d\uccb4\uac00 \uc800\uc7a5\ub41c \uba54\ubaa8\ub9ac \uc8fc\uc18c\ub97c \uac00\uc9c4\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; p = &amp;k[2]; \/\/ p\ub294 k\uc758 3\ubc88\uc9f8 \uc6d0\uc18c\ub97c \uac00\ub9ac\ud0a4\ub294 \ud3ec\uc778\ud130 &lt;\/TEXTAREA&gt;<\/p>\n<p>&#8211; \ub2e8\ud56d \uc5f0\uc0b0\uc790\uc778 &amp;\uc740 \uc8fc\uc18c ( address-of ) \uc5f0\uc0b0\uc790\uc774\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>\uc544\ub798\ub294 \ud55c \ubc30\uc5f4\uc5d0\uc11c \ub2e4\ub978 \ubc30\uc5f4\ub85c 4\uac1c\uc758 \uc6d0\uc18c\ub97c \ubcf5\uc0ac \ud558\ub294 \uc608\uc81c\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;#include &lt;iostream.h&gt; void main( ) { int k1[4] = {1,2,3,4}; \/\/\ubcf5\uc0ac\ud560 \ubcc0\uc218 \uc120\uc5b8\uacfc \ud568\uaed8 \ub370\uc774\ud130 \uc785\ub825 int k2[4] = {0,0,0,0}; \/\/\ubcf5\uc0ac \ubc1b\uc744 \ubcc0\uc218 \uc120\uc5b8\uacfc \ud568\uaed8 0\uc73c\ub85c \ucd08\uae30\ud654 int i; cout &lt;&lt;&#8220;Before copy&#8212;&#8212;&#8212;&#8212;&#8220;; for (i = 0; i&lt;3; i++) \/\/\ubcf5\uc0ac \ud558\uae30\uc804\uc758 \ubc30\uc5f4\uc744 \ubcf4\uc5ec\uc8fc\ub294 for\ubb38 { cout&lt;&lt;&#8220;nnk1[&#8220;&lt;&lt;i&lt;&lt;&#8220;] : &#8220;&lt;&lt;k1[i]; cout&lt;&lt;&#8220;nk2[&#8220;&lt;&lt;i&lt;&lt;&#8220;] : &#8220;&lt;&lt;k2[i]; } for (i=0; i&lt;4; i++) k2[i] = k1[i]; \/\/k1 \ubc30\uc5f4\uc744 k2\ubc30\uc5f4\ub85c \ubcf5\uc0ac \ud558\ub294 for\ubb38 cout &lt;&lt;&#8220;nnnAfter copy&#8212;&#8212;&#8212;&#8212;&#8220;; for (i = 0; i&lt;3; i++) \/\/\ubcf5\uc0ac\ud55c \ud6c4\uc758 \ubc30\uc5f4\uc744 \ubcf4\uc5ec\uc8fc\ub294 for\ubb38 { cout&lt;&lt;&#8220;nnk1[&#8220;&lt;&lt;i&lt;&lt;&#8220;] : &#8220;&lt;&lt;k1[i]; cout&lt;&lt;&#8220;nk2[&#8220;&lt;&lt;i&lt;&lt;&#8220;] : &#8220;&lt;&lt;k2[i]; } } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc704 \uc608\uc81c\uc5d0 \uc4f0\uc778 for\ubb38\uc740 i\ub97c 0\uc73c\ub85c \uc124\uc815\ud558\uace0 \uc774 \uac12\uc774 4\ubcf4\ub2e4 \uc791\uc740 \ub3d9\uc548 i\ubc88\uc9f8\uc758 \uc6d0\uc18c\ub97c \ubcf5\uc0ac\ud558\uace0 i\ub97c \uc99d\uac00\uc2dc\ud0a8\ub2e4<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt; color: #0070c0;\"><strong>2.4 \ubaa8\ub4c8\ud654 \ud504\ub85c\uadf8\ub798\ubc0d <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\ubb38\uc81c \ud574\uacb0\uc5d0 \uc0ac\uc6a9\ud558\ub294 \ub370\uc774\ud130\ub97c \ub9cc\ub4e4\uc5b4 \ub450\uba74, \uadf8 \ub370\uc774\ud130\ub97c \uc870\uc791\ud558\ub294 \ud504\ub85c\uc2dc\uc800\uac00 \uc790\uc5f0\uc2a4\ub7fd\uac8c \ud558\ub098 \ub458 \uc0dd\uae30\uac8c \ub418\ub294\ub370 \uc774\uac83\ub4e4\uc774 \ubaa8\uc778 \uac83\uc744 \uac00\ub9ac\ucf1c \ubaa8\ub4c8(module)\uc774\ub77c \ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>\ubaa8\ub4c8\ud654 \ud504\ub85c\uadf8\ub798\ubc0d\uc758 \ud328\ub7ec\ub2e4\uc784 <\/strong><\/p>\n<p>&#8211; \ubb38\uc81c \ud574\uacb0\uc5d0 \uc801\ud569\ud55c \ubaa8\ub4c8\uc744 \uc815\ud55c\ub2e4.<\/p>\n<p>&#8211; \ud504\ub85c\uadf8\ub7a8\uc744 \ucabc\uac1c\uc5b4 \ub370\uc774\ud130\uac00 \ubaa8\ub4c8 \uc18d\uc5d0 \uc228\uaca8\uc9c0\ub3c4\ub85d \ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>\uc774\ub7f0 \ud328\ub7ec\ub2e4\uc784\uc744 \uac00\ub9ac\ucf1c <span style=\"font-size: 10pt;\"><strong><em>\ub370\uc774\ud130 \uc740\ub2c9 \uc6d0\uce59(data-hiding principle)<\/em><\/strong><\/span>\uc774\ub77c\uace0\ub3c4 \ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>\ubaa8\ub4c8\ud654 \ud504\ub85c\uadf8\ub798\ubc0d\uc744 \uc798 \ubcf4\uc5ec\uc8fc\ub294 \ub300\ud45c\uc801\uc778 \uc608\ub85c \uc2a4\ud0dd\uc774 \uc788\ub294\ub370, \uc2a4\ud0dd\uc758 \uad6c\ud604\uc740 \ub2e4\uc74c\uacfc \uac19\uc774 \uc774\ub8e8\uc5b4\uc9c0\ub294 \uac83\uc774 \ubcf4\ud1b5\uc774\ub2e4.<\/p>\n<ol style=\"margin-left: 40pt;\">\n<li>\n<div style=\"text-align: justify;\"><em>\uc2a4\ud0dd \uc870\uc791\uc744 \uc704\ud55c \uc0ac\uc6a9\uc790(\ud504\ub85c\uadf8\ub798\ubc0d) \uc778\ud130\ud398\uc774\uc2a4\ub97c \uc81c\uacf5\ud55c\ub2e4 [push, pop] <\/em><\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\"><em>\uc2a4\ud0dd\uc744 \ub098\ud0c0\ub0b4\ub294 \ub370\uc774\ud130 (\ubc30\uc5f4\ub85c \ub098\ud0c0\ub0bc\uc218\ub3c4 \uc788\ub2e4)\ub294 1.\uc5d0\uc11c \uc81c\uacf5\ud55c \uc778\ud130\ud398\uc774\uc2a4\ub85c\ub9cc \uc811\uadfc(access) \ud560 \uc218 \uc788\ub3c4\ub85d \ud55c\ub2e4. <\/em><\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\"><em>\ubc18\ub4dc\uc2dc \uc0ac\uc6a9 \uc804\uc5d0 \uc2a4\ud0dd\uc758 \ucd08\uae30\ud654\uac00 \uc774\ub8e8\uc5b4\uc9c0\ub3c4\ub85d \ud55c\ub2e4. <\/em><\/div>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<p>\ub2e4\uc74c\uc740 namespace\ub97c \uc774\uc6a9 \ud558\uc5ec Stack\uc774\ub780 \uc774\ub984\uc758 \ubaa8\ub4c8\uc5d0 \ub300\ud55c \uc0ac\uc6a9\uc790 \uc778\ud130\ud398\uc774\uc2a4\ub97c \uc120\uc5b8\ud55c \uacb0\uacfc\uc640 \uc774 \uc778\ud130\ud398\uc774\uc2a4\uc758 \uc0ac\uc6a9 \uc608\uc81c\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;namespace stack \/\/\uc778\ud130\ud398\uc774\uc2a4 (\ubaa8\ub4c8 \uc120\uc5b8\ubd80) { void push(char); char pop( ); } void main( ) { stack::push(&#8216;c&#8217;); if(stack::pop( ) != &#8216;c&#8217;) error(&#8220;impossible&#8221;); } &lt;\/TEXTAREA&gt;<\/p>\n<p><span style=\"font-size: 10pt;\"><strong><em>stack::<\/em><\/strong><\/span> \uc774\ub780 \ud55c\uc815\ud45c\uc2dc(qualification)\uc740 \uadf8 \ub4a4\uc758 <span style=\"font-size: 10pt;\"><strong><em>push( )<\/em><\/strong><\/span>\uc640 <span style=\"font-size: 10pt;\"><strong><em>pop( )<\/em><\/strong><\/span>\uc774 stack namespace\uc758 \uac83\uc774\ub77c\ub294 \ub73b\uc774\ub2e4. \uc774\ub85c\uc368 \ub611\uac19\uc740 <span style=\"font-size: 10pt;\"><strong><em>push( )<\/em><\/strong><\/span> \ub098 <span style=\"font-size: 10pt;\"><strong><em>pop( )<\/em><\/strong><\/span>\uc744 \uc4f0\ub354\ub77c\ub3c4 \uc774\ub984 \ud63c\ub3d9\uc774 \uc77c\uc5b4\ub098\uc9c0 \uc54a\ub294\ub2e4<\/p>\n<p>stack \ubaa8\ub4c8\uc758 \uc815\uc758(\uad6c\ud604)\ucf54\ub4dc\ub294 (\uc120\uc5b8\ubd80\uc640) \ubcc4\ub3c4\ub85c \ucef4\ud30c\uc77c\ub41c \ud30c\uc77c\uc5d0\uc11c \ubc1b\uc544 \uc62c \uc218 \uc788\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;namespace stack { const int max_size = 200; char v[max_size]; int top = 0; void push(char c) { \/* overflow\ub97c \uc810\uac80\ud558\uace0 c\ub97c push\ud55c\ub2e4.*\/ } char pop( ) { \/* underflow\ub97c \uc810\uac80\ud558\uace0 pop\ud55c\ub2e4. *\/ } } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc774 \ubaa8\ub4c8\uc5d0\uc11c \uc0ac\uc6a9\uc790 \ucf54\ub4dc\uac00 \ub370\uc774\ud130\ud45c\ud604\ubd80\uc640 \ubd84\ub9ac \ub418\uc5b4 \uc788\uc74c\uc5d0 \uc8fc\ubaa9\ud558\uc790. \uc774\ub294 <span style=\"font-size: 10pt;\"><strong><em>stack::push( )<\/em><\/strong><\/span>\uc640 <span style=\"font-size: 10pt;\"><strong><em>stack pop::( )<\/em><\/strong><\/span>\uc774 \uc788\uae30 \ub54c\ubb38\uc5d0 \uac00\ub2a5\ud558\ub2e4.<\/p>\n<p>C++\uc758 namespace \uc5d0\ub294 \uc5b4\ub5a4 \uc120\uc5b8\uc774\ub4e0 \ub123\uc744 \uc218 \uc788\ub2e4. \uc774 \ubaa8\ub4c8\uc740 \uc2a4\ud0dd\uc744 \ub098\ud0c0\ub0b4\ub294 \uc218\ub2e8\uc911 \ud558\ub098\uc77c\ubfd0\uc774\ub2e4.<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.4.1 \ubd84\ud560 \ucef4\ud30c\uc77c <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\uc5ec\ub7ec \uac1c\uc758 \ud558\uc704 \uad6c\uc131 \uc694\uc18c\ub97c \ubaa8\uc544\uc11c \ud558\ub098\uc758 \ud504\ub85c\uadf8\ub7a8\uc744 \ub9cc\ub4e4 \ub54c <strong>\ubd84\ud560 \ucef4\ud30c\uc77c (separate compilation)<\/strong>\uc744 \uc0ac\uc6a9 \ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>\ubaa8\ub4c8 \uc778\ud130\ud398\uc774\uc2a4\ub97c \uc9c0\uc815\ud558\ub294 \uc120\uc5b8\ubd80\ub294 &#8216;\uc774\uac83\uc740 \uc778\ud130\ud398\uc774\uc2a4&#8217;\ub77c\ub294 \uac83\uc744 \uc798 \uc54c\ub824 \uc8fc\ub294 \uc774\ub984\uc744 \uac00\uc9c4 \ud30c\uc77c\uc5d0 \ub123\uc5b4 \ub454\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;namespace stack \/\/\uc778\ud130\ud398\uc774\uc2a4 { void push(char); char pop( ); } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc2a4\ud0dd\uc744 \uc870\uc791\ud558\ub294 \ud568\uc218\ub97c \uc120\uc5b8\ud574 \ub454 \uc778\ud130\ud398\uc774\uc2a4\ub97c stack.h\ub77c\ub294 <strong>\ud5e4\ub354\ud30c\uc77c(header file)<\/strong>\uc5d0 \ub123\ub294\ub2e4. \uc0ac\uc6a9\uc790\ub294 \uc774 \ud30c\uc77c\uc744 include \ud574\uc11c \uc0ac\uc6a9\uc790 \ucf54\ub4dc\ub85c \uac00\uc838 \uc628\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;#include &#8220;stack.h&#8221; \/\/\uc778\ud130\ud398\uc774\uc2a4\ub97c \uac00\uc838 \uc628\ub2e4. void main( ) { stack::push(&#8216;c&#8217;); if(stack::pop( ) != &#8216;c&#8217;) error(&#8220;impossible&#8221;); } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc77c\uad00\uc131\uc744 \uc720\uc9c0\ud560 \uc218 \uc788\ub3c4\ub85d, stack \ubaa8\ub4c8\uc758 \uad6c\ud604\ubd80\ub97c \uac00\uc9c0\uace0 \uc788\ub294 \ud30c\uc77c \ucabd\uc5d0\uc11c\ub3c4 \uc778\ud130\ud398\uc774\uc2a4\ub97c include\ud55c\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;#include &#8220;stack.h&#8221; \/\/\uc778\ud130\ud398\uc774\uc2a4\ub97c \uac00\uc838\uc628\ub2e4. namespace stack \/\/ \uc2a4\ud0dd\uc758 \ub370\uc774\ud130 \ud45c\ud604 { const int max_size = 200; char v[max_size]; int top = 0; } void push(char c) { \/* overflow\ub97c \uc810\uac80\ud558\uace0 c\ub97c push\ud55c\ub2e4.*\/ } char pop( ) { \/* underflow\ub97c \uc810\uac80\ud558\uace0 pop\ud55c\ub2e4. *\/ } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc774 \ubaa8\ub4c8\uc744 \uc0ac\uc6a9 \ud558\ub294 \ucf54\ub4dc\ub294 \uc81c 3\uc758 \ud30c\uc77c \uc5d0 \ub454\ub2e4. stack.h\uc548\uc5d0 \ub9cc\ub4e4\uc5b4 \ub193\uc740 \uc778\ud130\ud398\uc774\uc2a4 \uc815\ubcf4\ub97c \uc5ec\ub7ec \uad70\ub370\uc11c \ub04c\uc5b4\uc624\uace0 \uc788\uc9c0\ub9cc, \uadf8\ub807\ub2e4\uace0 \ud574\uc11c \ud30c\uc77c\ub4e4 \uc0ac\uc774\uc5d0 \uc5b4\ub5a4 \uc885\uc18d \uad00\uacc4\uac00 \uc788\ub294 \uac83\uc740 \uc804\ud600 \uc544\ub2c8\ub2e4. stack.h\ub97c \ubd88\ub7ec \uc624\ub294 \ubaa8\ub4e0 \ud30c\uc77c\uc744 \uac01\uac01 \ub530\ub85c \ucef4\ud30c\uc77c \ub41c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>\ud504\ub85c\uadf8\ub7a8\uc744 \uc798 \uc791\uc131 \ud558\ub824\uba74<\/p>\n<ol style=\"margin-left: 40pt;\">\n<li>\n<div style=\"text-align: justify;\">\ubaa8\ub4c8\ud654\uc758 \uc815\ub3c4\ub97c \uadf9\ub300\ud654 \ud55c\ub2e4.<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\uc5b8\uc5b4\uc5d0\uc11c \uc81c\uacf5\ub418\ub294 \ud2b9\uc9d5\uc744 \ubc18\uc601\ud558\uc5ec \ubaa8\ub4c8\uad00\uacc4\ub97c \ub17c\ub9ac\uc801\uc73c\ub85c \ud45c\ud604\ud55c\ub2e4.<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\ud6a8\uacfc\uc801\uc778 \ubd84\ud560 \ucef4\ud30c\uc77c\uc744 \uc704\ud574 \ubaa8\ub4c8\ub4e4\uc744 \ubcc4\ub3c4\uc758 \ud30c\uc77c\uc5d0 \ubd84\uc0b0 \uc2dc\ucf1c \uad6c\uc131\ud55c\ub2e4.<\/div>\n<\/li>\n<\/ol>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.4.2 \uc608\uc678 \ucc98\ub9ac <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\ubaa8\ub4c8\uc758 \uc9d1\ud569\uc73c\ub85c \uc124\uacc4 \ub418\uc5b4 \uc788\ub294 \ud504\ub85c\uadf8\ub7a8 \uc5d0\uc11c\ub294 \uc624\ub958 \ucc98\ub9ac\ub3c4 \ubaa8\ub4c8 \uc911\uc2ec\uc73c\ub85c \ud574 \uc8fc\uc5b4\uc57c \ud55c\ub2e4. stack \ubaa8\ub4c8\uc744 \uc608\ub97c \ub4e4\uc5b4 stack\uc744 \ucd08\uacfc\ud558\ub294 \ubb38\uc790\ub97c <span style=\"font-size: 10pt;\"><strong><em>push( )<\/em><\/strong><\/span> \ud560 \ub54c \uc5b4\ub5bb\uac8c \ub300\ucc98 \ud574\uc57c \ud560\uae4c? \ud574\uacb0\ucc45\uc740 Stack\ubaa8\ub4c8 \uac1c\ubc1c\uc790 \ucabd\uc5d0\uc11c <span style=\"font-size: 10pt;\"><strong><em>overflow<\/em><\/strong><\/span>\uac00 \ub098\ub294 \uacbd\uc6b0\ub97c \ucc3e\uc544 \uc0ac\uc6a9\uc790\uc5d0\uac8c \uc54c\ub824\uc8fc\ub294 \uac83\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; namespace stack \/\/\uc778\ud130\ud398\uc774\uc2a4 { void push(char); char pop( ); class overflow { }; \/\/overflow \ub77c\ub294 \uc608\uc678 \uc0c1\ud669\uc744 \ub098\ud0c0\ub0b4\ub294 \ud0c0\uc785 } &lt;\/TEXTAREA&gt;<\/p>\n<p><span style=\"font-size: 10pt;\"><strong><em>stack::push( )<\/em><\/strong><\/span> \ub294 \uc624\ubc84\ud50c\ub85c\uac00 \ubc1c\uc0dd \ud588\ub2e4 \ud310\ub2e8\ub418\uba74 \uc801\uc808\ud55c \uc608\uc678 \ucc98\ub9ac \ucf54\ub4dc\ub97c \ud638\ucd9c \ud55c\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; void stack::push(char c) { if ( top == max_size ) throw overflow( ); \/\/ c\ub97c push\ud55c\ub2e4. } &lt;\/TEXTAREA&gt;<\/p>\n<p><span style=\"font-size: 10pt;\"><strong><em>throw<\/em><\/strong><\/span>\ub294 <span style=\"font-size: 10pt;\"><strong><em>stack::overflow<\/em><\/strong><\/span> \ud0c0\uc785\uc744 \uac00\uc9c4 \uc608\uc678\ub97c \ucc98\ub9ac \ud558\ub294 \ube14\ub85d\uc73c\ub85c \uc81c\uc5b4\uad8c\uc744 \ub118\uae34\ub2e4. \uc774 \ube14\ub85d\uc740 stack::push( )\ub97c \uc9c1\uac04\uc811\uc801\uc73c\ub85c \ud638\ucd9c\ud55c \ud568\uc218 \uc5b4\ub518\uac00\uc5d0 \uc788\uc5b4\uc57c \ud55c\ub2e4. \uc774 &#8216;\uc81c\uc5b4\uad8c \ub118\uae30\uae30&#8217;\ub97c \uc704\ud574 C++\ud658\uacbd\uc740 \ud638\ucd9c\ubd80\uc758 \ubb38\ub9e5\uc744 \uc81c\ub300\ub85c \ucc3e\uc544 \uac08\uc218 \uc788\ub3c4\ub85d \ud638\ucd9c \uc2a4\ud0dd\uc5d0 \ub300\ud55c \ud480\uae30 \ub3d9\uc791\uc744 \uc801\uc808\ud788 \uc218\ud589\ud55c\ub2e4. \uc27d\uac8c \ub9d0\ud574 \uc5ec\ub7ec \uad70\ub370\uc5d0 return\uc744 \ud558\ub294 \uac83\uacfc \ub9c8\ucc2c\uac00\uc9c0\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; void main( ) { \/\/.. try { \/\/\uc5ec\uae30\uc11c \uc77c\uc5b4\ub09c \uc608\uc678\uc758 \ucc98\ub9ac\ub294 \uc544\ub798\uc5d0 \uc815\uc758\ub41c \ucc98\ub9ac\uc790\uac00 \ub9e1\ub294\ub2e4. while(true) stack::push(&#8216;c&#8217;); } catch (stack::overflow) { \/\/\uc2a4\ud0dd overflow\uc5d0 \ub300\ud574 \uc801\uc808\ud55c \uc870\uce58\ub97c \ucde8\ud55c\ub2e4. } \/\/&#8230; } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc774 \ucf54\ub4dc\uc5d0\uc11c while \ub8e8\ud504\ub294 \ubb34\ud55c\uc815 \ub3cc\uac8c \ub41c\ub2e4. \ub530\ub77c\uc11c <span style=\"font-size: 10pt;\"><strong><em>stack::overflow<\/em><\/strong><\/span>\uc5d0 \ub300\ud55c \ucc98\ub9ac\uc790\uac00 \uc788\ub294 <span style=\"font-size: 10pt;\"><strong><em>catch<\/em><\/strong><\/span> \uc808\uc740 \uc2a4\ud0dd\uc774 \ub118\uccd0\uc11c <span style=\"font-size: 10pt;\"><strong><em>stack::push( )<\/em><\/strong><\/span>\uc5d0\uc11c <span style=\"font-size: 10pt;\"><strong><em>throw<\/em><\/strong><\/span>\uac00 \uc2e4\ud589 \ub41c \ud6c4\uc5d0\uc57c \uc6c0\uc9c1\uc778\ub2e4.<\/p>\n<p>\uc608\uc678 \ucc98\ub9ac \uba54\ucee4\ub2c8\uc998\uc740 \uc624\ub958 \ucc98\ub9ac \ucf54\ub4dc\ub97c \uc880\ub354 \uc870\uc9c1\uc801\uc774\uace0 \uc77d\uae30 \uc88b\uac8c \ud558\uae30 \uc704\ud574 \ub9c8\ub828\ub41c \uac83\uc774\ub2e4.<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt; color: #0070c0;\"><strong>2.5 \ub370\uc774\ud130 \ucd94\uc0c1\ud654 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\uaddc\ubaa8\uac00 \ud070 \ud504\ub85c\uadf8\ub7a8 \uc911\uc5d0 \uc81c\ub300\ub85c \ub41c \uac83\uc740 \ubaa8\ub450 &#8216;\ubaa8\ub4c8\ud654\uac00 \uc798 \ub418\uc5c8\ub2e4&#8217; \ub77c\ub294 \ud2b9\uc9d5\uc744 \uae30\ubcf8\uc801\uc73c\ub85c \uac00\uc9c0\uace0 \uc788\ub2e4. \ubaa8\ub4c8\uc744 \ud1b5\ud574 \uc0ac\uc6a9\uc790 \uc815\uc758 \ud0c0\uc785\uc758 &#8216;\ubaa8\uc591\uc0c8&#8217;\ub97c \uc81c\uacf5\ud558\ub294 \ubc29\ubc95\uacfc, \uc774 \ubc29\ubc95\uc744 \uc37c\uc744 \ub54c \uc0dd\uae30\ub294 \ubb38\uc81c\ub97c \ud574\uacb0 \ud558\uae30 \uc704\ud574 \uc0ac\uc6a9\uc790 \uc815\uc758 \ud0c0\uc785\uc744 \uc9c1\uc811 \uc815\uc758 \ud558\ub294 \ubc29\ubc95\uc744 \uc54c\uc544\ubcf4\uc790.<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.5.1 \ubaa8\ub4c8\ub85c \ud0c0\uc785\uc744 \uc815\uc758\ud558\ub294 \ubc29\ubc95 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\ubaa8\ub4c8 \ubc29\uc2dd\uc73c\ub85c \ud504\ub85c\uadf8\ub798\ubc0d\uc744 \ud558\ub2e4 \ubcf4\uba74, \ud55c \uac00\uc9c0 \ud0c0\uc785\uc744 \uac00\uc9c4 \ub370\uc774\ud130\ub294 \ubaa8\ub450 <strong>\ud0c0\uc785 \uad00\ub9ac\uc790 \ubaa8\ub4c8(type manager module) <\/strong>\uac19\uc740 \uac83\uc744 \uc368\uc11c \ubaa8\uc544 \ub450\ub294 \uacbd\uc6b0\uac00 \uc0dd\uae38 \uc218 \ubc16\uc5d0 \uc5c6\uac8c \ub41c\ub2e4. \uc55e\uc5d0\uc11c \ubcf8 stack \ubaa8\ub4c8\uc744 \uc5ec\ub7ec \uac1c \uc4f0\uace0 \uc2f6\uc740 \uacbd\uc6b0, \ud544\uc694\ud55c \uc778\ud130\ud398\uc774\uc2a4\uac00 \ub2ec\ub9b0 \uc2a4\ud0dd \uad00\ub9ac\uc790\ub97c \uc815\uc758\ud574\uc11c \uc4f0\ub294 \uac83\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;namespace stack { struct Rep; \/\/\uc2a4\ud0dd \ub370\uc774\ud130\ub97c \ub098\ud0c0\ub0b4\ub294 Rep. \uc774\uac83\uc758 \uc815\uc758\ub294 \uc5b4\ub514\uc5d0 \uc788\uc744 \uac83\uc774\ub2e4. typedef Rep&amp; stack; stack create( ); \/\/\uc2a4\ud0dd\ud558\ub098\ub97c \uc0c8\ub85c \ub9cc\ub4e0\ub2e4. void destroy(stack s); \/\/s\ub97c \uc0ad\uc81c\ud55c\ub2e4. void push(stack s, char c); \/\/c\ub97c s\uc5d0 push\ud55c\ub2e4. char pop(stack s); \/\/s\ub97c pop\ud55c\ub2e4. } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc120\uc5b8\ubb38 <span style=\"font-size: 10pt;\"><strong><em>struct Rep;<\/em><\/strong><\/span> \uc5d0\uc11c Rep\uc740 \ud0c0\uc785 \uc774\ub984\uc5d0 \ud574\ub2f9 \ud558\uc9c0\ub9cc, \ud0c0\uc785 \uc790\uccb4\ub294 \ub098\uc911\uc5d0 \uc815\uc758\ub418\ub3c4\ub85d \ub0b4\ubc84\ub824 \ub454 \uc0c1\ud0dc\uc774\ub2e4.<\/p>\n<p>\ub450 \ubc88\uc9f8\ub85c \ub098\uc628 \uc120\uc5b8\ubb38 <span style=\"font-size: 10pt;\"><strong><em>typedef Rep &amp; stack;<\/em><\/strong><\/span> \uc740 &#8216;Rep\uc5d0 \ub300\ud55c \ucc38\uc870\uc790(reference)&#8217;\uc5d0 stack\uc774\ub780 \uc774\ub984\uc744 \ubd99\uc778\ub2e4. \uc774 <span style=\"font-size: 10pt;\"><strong><em>stack::stack<\/em><\/strong><\/span>\uc740 \uae30\ubcf8 \uc81c\uacf5 \ud0c0\uc785\uc758 \ubcc0\uc218\uc640 \ub611\uac19\uc774 \uc4f8 \uc218 \uc788\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; struct Bad_pop { }; void f( ) { stack::stack s1 = stack::create( ); \/\/\uc2a4\ud0dd \ud558\ub098\ub97c \uc0c8\ub85c \ub9cc\ub4e0\ub2e4. stack::stack s2 = stack::create( ); \/\/\uc2a4\ud0dd\uc744 \ud558\ub098 \ub354 \ub9cc\ub4e0\ub2e4. stack::push(s1,&#8217;c&#8217;); stack::push(s2,&#8217;k&#8217;); if (stack::pop(s1) != &#8216;c&#8217;) throw Bad_pop( ); if (stack::pop(s2) != &#8216;k&#8217;) throw Bad_pop( ); stack::destroy(s1); stack::destroy(s2); }&lt;\/TEXTAREA&gt;<\/p>\n<p>Stack\uc758 \uc778\ud130\ud398\uc774\uc2a4\ub97c \uad6c\ud604 \ud558\ub294 \ubc29\ubc95\uc740 \uc5ec\ub7ec \uac00\uc9c0\uac00 \uc788\uc744 \uc218 \uc788\uaca0\uc9c0\ub9cc, \uc5b4\ub5a4 \ubc29\ubc95\uc744 \uc4f0\ub4e0 \uc0ac\uc6a9\uc790\ub294 \uc2e0\uacbd \uc4f0\uc9c0 \uc54a\uc544\ub3c4 \ub41c\ub2e4.<\/p>\n<p>\uad6c\ud604\ubc29\ubc95\uc758 \ud55c \uac00\uc9c0 \uc608 : \uc2a4\ud0dd \uba87 \uac1c\ub97c \ubbf8\ub9ac \ub9cc\ub4e4\uc5b4 \ud560\ub2f9\ud574 \ub193\uace0, <span style=\"font-size: 10pt;\"><strong><em>stack::create( )<\/em><\/strong><\/span>\ub294 \ubbf8\uc0ac\uc6a9 \uc2a4\ud0dd\uc5d0 \ub300\ud55c \ucc38\uc870\uc790\ub97c \ub044\uc9d1\uc5b4 \ub0b4\ub294 \uc77c\ub9cc \ud558\uac8c \ud55c\ub2e4. <span style=\"font-size: 10pt;\"><strong><em>stack::destroy( )<\/em><\/strong><\/span>\ub294 \uc0ac\uc6a9 \ub418\ub294 \uac83\ub4e4\uc740 \ub2e4\uc2dc &#8216;\ubbf8\uc0ac\uc6a9&#8217; \uc774\ub77c\uace0 \ud45c\uc2dc\ud574 \ub450\uc5b4, \ub098\uc911\uc5d0 <span style=\"font-size: 10pt;\"><strong><em>stack::create( )<\/em><\/strong><\/span>\uac00 \uc7ac\uc0ac\uc6a9\ud560 \uc218 \uc788\ub3c4\ub85d \ud558\ub294 \uac83\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; namespace stack { \/\/\uc2e4\uc81c \uc2a4\ud0dd \ub370\uc774\ud130\uc758 \ud45c\ud604\ubd80 const int max_size = 200; struct Rep { char v [max_size]; int top; }; const int max = 16; Rep stacks[max]; bool used[max]; typedef Rep&amp; stack; } void stack::push(stack s, char c) { \/* \uc624\ubc84\ud50c\ub85c\ub97c \uc810\uac80\ud558\uace0 c\ub97c push\ud55c\ub2e4. *\/ } char stack::pop(stack s) { \/* s\uac00 \uc5b8\ub354\ud50c\ub85c\uac00 \ub0ac\ub294\uc9c0 \uc810\uac80\ud558\uace0 pop\ud55c\ub2e4. *\/ } stack::stack stack::create( ) { \/\/\ubbf8\uc0ac\uc6a9 \uc911\uc778 Rep\uc744 \uaebc\ub0b4\uace0 \uc774\uac83\uc744 &#8216;\uc0ac\uc6a9 \uc911&#8217;\uc774\ub77c\uace0 \ud45c\uc2dc\ud55c \ud6c4, \ucd08\uae30\ud654\ud558\uace0 \ucc38\uc870\uc790\ub97c \ubc18\ud658\ud55c\ub2e4. } void stack::destroy(stack s) { \/* s\ub97c &#8220;\ubbf8\uc0ac\uc6a9&#8221; \uc0c1\ud0dc\ub85c \ubc14\uafbc\ub2e4. *\/ } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc9c0\uae08\uae4c\uc9c0\uc758 \ucf54\ub4dc\ub97c \ubcf4\uba74, \uc2a4\ud0dd\uc744 \ud45c\ud604\ud558\ub294 \ud0c0\uc785\uc774 \uc778\ud130\ud398\uc774\uc2a4 \ud568\uc218\ub4e4\ub85c \ub458\ub7ec\uc2f8\uc778 \ud615\ud0dc\uc774\ub2e4. \uc774\ub807\uac8c \uc5d0\ub458\ub7ec \ub9cc\ub4e4\uc5b4\uc9c4 &#8216;\uc2a4\ud0dd \ud0c0\uc785&#8217;\uc758 \ub3d9\uc791 \ubc29\uc2dd\uc744 \uc88c\uc6b0\ud558\ub294 \uc694\uc778\uc740 \uc5ec\ub7ec \uac00\uc9c0\ub85c\uc11c, \uc870\uae08\uc529 \ub2ec\ub77c\uc9c4\ub2e4. \uadf8\ub7ec\ub098 \uc774 \ubc29\ubc95\uc740 \uc774\uc0c1\uc801\uc778 \uc124\uacc4\uc5d0\uc11c \uc57d\uac04 \uc5b4\uae0b\ub098 \uc788\ub2e4. \uc720\uc0ac \ud0c0\uc785\uc744 \uc0ac\uc6a9\ud558\ub294 \ubc29\ubc95\uc774 \uc2e4\uc81c \ub370\uc774\ud130\uc758 \ub0b4\ubd80\uc0ac\ud56d\uc5d0 \ub530\ub77c \ud310\uc774\ud558\uac8c \ub2ec\ub77c\uc9c8 \uc218 \uc788\uace0, \uc0ac\uc6a9\uc790\ub294 \uc774\ub85c \uc778\ud574 \ud63c\ub780\uc2a4\ub7ec\uc6cc \ud55c\ub2e4.<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.5.2 \uc0ac\uc6a9\uc790 \uc815\uc758 \ud0c0\uc785 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\uc774 \ubb38\uc81c\uc5d0 \ub300\ud55c \ud574\uacb0\ucc45\uc73c\ub85c C++\uc5d0\uc11c\ub294 \uae30\ubcf8 \uc81c\uacf5 \ud0c0\uc785\uacfc \ub611\uac19\uc740 \ub3d9\uc791 \ubc29\uc2dd\uc744 \uac00\uc9c0\ub294 \ud0c0\uc785\uc744 \uc0ac\uc6a9\uc790\uac00 \uc9c1\uc811 \uc815\uc758\ud560 \uc218 \uc788\ub3c4\ub85d \ud558\uc600\ub2e4. \uc774\ub7f0 \ud0c0\uc785\uc744 \uac00\ub9ac\ucf1c \ucd94\uc0c1 \ub370\uc774\ud130 \ud0c0\uc785 (abstract data type)\uc774\ub77c\uace0\ub4e4 \ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>\uc0ac\uc6a9\uc790 \uc815\uc758 \ud0c0\uc785\uc744 \uc0ac\uc6a9\ud55c \ud504\ub85c\uadf8\ub798\ubc0d\uc758 \uc774\ub860\uc801\uc778 \ud2c0 <\/strong><\/p>\n<ul>\n<li>\n<div style=\"text-align: justify;\">\ubb38\uc81c \ud574\uacb0\uc5d0 \ud544\uc694\ud55c \ud0c0\uc784\ub4e4\uc744 \uc815\ud55c\ub2e4.<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\uac01\ud0c0\uc785\uc5d0 \ub300\ud574 \ub3d9\uc791 \uc5f0\uc0b0\uc744 \uc644\ubcbd\ud558\uac8c \uc81c\uacf5\ud55c\ub2e4.<\/div>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>\uc0ac\uc6a9\uc790 \uc815\uc758 \ud0c0\uc785\uc758 \uc608\ub294 \uc720\ub9ac\uc218\ub098 \ubcf5\uc18c\uc218 \ub530\uc704\ub97c \ub098\ud0c0\ub0b4\ub294 \uc0b0\uc220 \ud0c0\uc785\uc774 \ub300\ud45c\uc801\uc774\ub2e4. \ub2e4\uc74c \uc608\uc81c\ub97c \ubcf4\uc790.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; class complex { double re, im; public: complex(double r, double i) { re=r; im=i; } \/\/\ub450 \uac1c\uc758 \uc2a4\uce7c\ub77c\ub85c\ubd80\ud130 \ubcf5\uc18c\uc218\ub97c \ub9cc\ub4e0\ub2e4 complex(double r) { re=r; im=0; } \/\/\ud558\ub098\uc758 \uc2a4\uce7c\ub77c\ub85c\ubd80\ud130 \ubcf5\uc18c\uc218\ub97c \ub9cc\ub4e0\ub2e4. complex( ) { re = im = 0; } friend complex operator + (complex, complex); friend complex operator &#8211; (complex, complex); \/\/\uc774\ud56d \uc5f0\uc0b0 friend complex operator &#8211; (complex, complex); \/\/\ub2e8\ud56d \uc5f0\uc0b0 friend complex operator * (complex, complex); friend complex operator \/ (complex, complex); friend complex operator == (complex, complex); \/\/\uac19\uc74c \ube44\uad50 friend complex operator != (complex, complex); \/\/\ub2e4\ub984 \ube44\uad50 \/\/&#8230; }; &lt;\/TEXTAREA&gt;<\/p>\n<p>complex\ub780 \uc774\ub984\uc758 \ud074\ub798\uc2a4(\uc0ac\uc6a9\uc790 \uc815\uc758 \ud0c0\uc785)\ub294 \ubcf5\uc18c\uc218 \ub370\uc774\ud130\uc758 \ud45c\ud604\ubd80\uc640 \uc870\uc791\uc5d0 \ud544\uc694\ud55c \uc5f0\uc0b0\ub4e4\uc744 \ubaa8\ub450 \uac00\uc9c0\uace0 \uc788\ub2e4. \uc5ec\uae30\uc11c \ub370\uc774\ud130\ud45c\ud604\ubd80\ub294 \uc678\ubd80\uc5d0 \uac00\ub824\uc838 \uc788\ub2e4. (re\uc640 im) \uc774 \ub450 \ub370\uc774\ud130\ub294 complex \ud074\ub798\uc2a4\uc758 \uc120\uc5b8\ubd80\uc5d0\uc11c \uc9c0\uc815\ub41c \ud568\uc218\ub4e4\ub9cc \uc811\uadfc\ud560 \uc218 \uc788\ub2e4. \uc774\ub4e4 &#8216;\uc9c0\uc815\ub41c&#8217; \ud568\uc218\ub294 \ub2e4\uc74c\uacfc \uac19\uc774 \uc815\uc758 \ub420 \uc218 \uc788\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; complex operator + ( complex a1, complex a2) { return complex (a1.re + a2.re, a1.im + a2.im); } &lt;\/TEXTAREA&gt;<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 10pt;\"><strong><em>\u00a0<\/em><\/strong><\/span>\ud074\ub798\uc2a4\uc640 \ub611\uac19\uc740 \uc774\ub984\uc744 \uac00\uc9c4 \uba64\ubc84 \ud568\uc218\ub97c \ubcfc \uc218 \uc788\ub294\ub370, \uc774\uac83\uc744 \uc0dd\uc131\uc790(constructor)\ub77c\uace0 \ud55c\ub2e4. complex \ud074\ub798\uc2a4\uc5d0 \uc815\uc758\ub41c \uc0dd\uc131\uc790\ub294 double\ud558\ub098\ub97c \ubc1b\uc544 complex\uac1d\uccb4\ub97c \ucd08\uae30\ud654\ud558\ub294 \uac83, double \ub450 \uac1c\ub97c \ubc1b\uc544 \ucd08\uae30\ud654\ud558\ub294 \uac83, \uadf8\ub9ac\uace0 \uae30\ubcf8 \uac12\uc73c\ub85c \ucd08\uae30\ud654\ud558\ub294 \uac83, \uc774\ub807\uac8c \uc138 \uac00\uc9c0\uc774\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>complex \ud074\ub798\uc2a4\uc758 \uc0ac\uc6a9\ubc95\uc740 \ub2e4\uc74c\uacfc \uac19\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; void f(complex z) { complex a = 2.3; complex b = 1\/a; complex c = a+b*complex(1,2.3) \/\/&#8230; if (c != b) c = -(b\/a) + 2*b; } &lt;\/TEXTAREA&gt;<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 10pt;\"><strong><em>\u00a0<\/em><\/strong><\/span>C++ \ucef4\ud30c\uc77c\ub7ec\ub294 complex \ud0c0\uc785\uc758 \ubcf5\uc18c\uc218\ub97c \ud53c\uc5f0\uc0ac\uc790\ub85c \uc0ac\uc6a9\ud558\ub294 \uc5f0\uc0b0\uc790\ub97c \uc77d\uc5b4, \uadf8 \ud074\ub798\uc2a4\uc5d0\uc11c \uc815\uc758\ub41c \ud568\uc218 \ud638\ucd9c \ucf54\ub4dc\ub85c \ubc14\uafb8\uc5b4 \uc900\ub2e4.<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.5.3 \uad6c\uccb4 \ud0c0\uc785 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\uc55e\uc11c \ubcf4\uc558\ub358 stack \ud0c0\uc785\uc774 complex \ud0c0\uc785\ucc98\ub7fc \ub9cc\ub4e4\uc5b4\uc84c\ub2e4\uace0 \uc0dd\uac01 \ud574\ubcf4\uc790. \uc57d\uac04 \uc4f8\ub9cc\ud558\uac8c \ub2e4\ub4ec\uc73c\ub824\uba74 \uc2a4\ud0dd \ub0b4\ubd80\uc758 \uc6d0\uc18c \uac1c\uc218\ub97c \uc778\uc790\ub85c \ubc1b\uc544\ub4e4\uc774\ub3c4\ub85d \ub2e4\uc74c\uacfc \uac19\uc774 \uc815\uc758 \ud560 \uc218 \uc788\uc744 \uac83\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; class stack { char*v; int top; int max_size; public: class underflow { }; \/\/ \uc608\uc678\ub85c \uc0ac\uc6a9\ud558\uae30 \uc704\ud568 class overflow { }; \/\/ \uc608\uc678\ub85c \uc0ac\uc6a9\ud558\uae30 \uc704\ud568 class bad_size { }; \/\/ \uc608\uc678\ub85c \uc0ac\uc6a9\ud558\uae30 \uc704\ud568 stack(int s); \/\/ \uc0dd\uc131\uc790 stack( ); \/\/ \uc18c\uba78\uc790 void push(char c); char pop( ); }; &lt;\/TEXTAREA&gt;<\/p>\n<p style=\"text-align: justify;\">&#8216;\uc0dd\uc131\uc790&#8217;\ub77c\ub294 \uc774\ub984\uc774 \ubd99\uc740 stack(int)\ub294 \uc774 \ud074\ub798\uc2a4\uc758 \uac1d\uccb4\uac00 \uba54\ubaa8\ub9ac\uc5d0 \ub9cc\ub4e4\uc5b4\uc9c8 \ub54c\ub9c8\ub2e4 \ud638\ucd9c\ub418\ub294 \ud568\uc218 \uc774\ub2e4. \uc774 \ud568\uc218\uac00 \ub9e1\uc740 \uc77c\uc740 \uac1d\uccb4\uc758 \ucd08\uae30\ud654\uc774\ub2e4. \uc774 \ud074\ub798\uc2a4\uc758 \uac1d\uccb4\uac00 \uc720\ud638 \ubc94\uc704\ub97c \ubc97\uc5b4\ub0a0 \uacbd\uc6b0\uc5d0 \ub05d \ub9c8\ubb34\ub9ac \uc791\uc5c5\uc774 \ud544\uc694 \ud558\ub2e4\uba74 \uc18c\uba78\uc790(destructor)\ub77c\ub294 \ud568\uc218\ub97c \uc900\ube44\ud574 \ub450\uba74 \ub41c\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; stack::stack(int s) \/\/ \uc0dd\uc131\uc790 { top = 0; if (s0 || 10000&lt;s) throw bad_size( ); \/\/ &#8216;||&#8217;\uc758 \ub73b\uc740 &#8216;\ub610\ub294&#8217;\uc774\ub2e4. max_size = s; v = new char[s]; \/\/ \uc790\uc720 \uc800\uc7a5\uacf5\uac04\uc5d0 \uc6d0\uc18c \ud560\ub2f9 } stack::~stack( ) \/\/ \uc18c\uba78\uc790 { delete[ ] v; \/\/ \uacf5\uac04\uc744 \ub2e4\uc2dc \uc4f8 \uc218 \uc788\ub3c4\ub85d \ud560\ub2f9\ud55c \uc6d0\uc18c\ub97c \ud574\uc81c\ud55c\ub2e4. } &lt;\/TEXTAREA&gt;<\/p>\n<p style=\"text-align: justify;\">\uc5ec\uae30\uc11c \uc0dd\uc131\uc790\uac00 \ud560 \uc77c\uc744 \uc0c8\ub85c \uc0dd\uc131\ub41c stack \ubcc0\uc218\ub97c \ucd08\uae30\ud654\ud558\ub294 \uac83\uc774\ub2e4. \uc0ac\uc6a9\uc790\ub294 \uae30\ubcf8\uc81c\uacf5 \ud0c0\uc785\uc758 \ubcc0\uc218\ub97c \ub300\ud558\ub4ef\uc774 stack \uac1d\uccb4\ub97c \ub9cc\ub4e4\uc5b4 \uc4f0\uba74 \ub418\ub294 \uac83\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; stack s_varl(10); \/\/10\uac1c\uc758 \uc6d0\uc18c\ub97c \uac00\uc9c4 \uc804\uc5ed \uc2a4\ud0dd void f(stack&amp; s_ref; inti) \/\/stack \uac1d\uccb4\uc5d0 \ub300\ud55c \ucc38\uc870\uc790 { stack s_var2(i); \/\/ i \uac1c\uc758 \uc6d0\uc18c\ub97c \uac00\uc9c4 \uc9c0\uc5ed \uc2a4\ud399 stack* s_ptr = new stack(20); \/\/\uc790\uc720 \uc800\uc7a5\uacf5\uac04\uc5d0 \ud560\ub2f9\ub41c stack\uac1d\uccb4 \ud3ec\uc778\ud130 s_var1.push(&#8216;a&#8217;); \/\/\ubcc0\uc218\ub97c \ud1b5\ud574 \uc811\uadfc\ud558\ub294 \ubc29\ubc95 s_var2.push(&#8216;b&#8217;); s_ref:push(&#8216;c&#8217;); \/\/\ucc38\uc870\uc790\ub97c \ud1b5\ud574 \uc811\uadfc\ud558\ub294 \ubc29\ubc95 s_ptr -&gt; push(&#8216;d&#8217;); \/\/\ud3ec\uc778\ud130\ub97c \ud1b5\ud574 \uc811\uadfc \ud558\ub294 \ubc29\ubc95 \/\/&#8230; }&lt;\/TEXTAREA&gt;<\/p>\n<p>&nbsp;<\/p>\n<p>\uc774 stack \ud0c0\uc785\uc740 \uc774\uc81c \ub3d9\uc791 \ubc29\uc2dd\uc774 int\ub098 char \ub4f1\uc758 \uae30\ubcf8 \uc81c\uacf5 \ud0c0\uc785\uacfc \ub611\uac19\uc544\uc84c\ub2e4.<\/p>\n<p>\uc55e\uc5d0\uc11c \ubcf8 complex\uc640 \uc5ec\uae30\uc11c \ubcf8 stack\uacfc \uac19\uc740 \ud0c0\uc785\uc744 \uac00\ub9ac\ucf1c \uad6c\uccb4 \ud0c0\uc785(concrete type) \uc774\ub77c\uace0 \ud55c\ub2e4. \ucd94\uc0c1 \ud0c0\uc785(abstract type)\uacfc \ubc18\ub300\ub418\ub294 \uc758\ubbf8\uc778\ub370, \uc774 \ucd94\uc0c1 \ud0c0\uc785\uc740 \uc778\ud130\ud398\uc774\uc2a4 \ubc16\uc5d0 \uc5c6\uae30 \ub54c\ubb38\uc5d0 \uc0ac\uc6a9\uc790 \ucf54\ub4dc\uac00 \uad6c\ud604\ucf54\ub4dc\ub85c\ubd80\ud130 \ub354 \ubd84\ub9ac \ub41c\ub2e4.<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.5.4 \ucd94\uc0c1 \ud0c0\uc785 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>stack \uc774\ub780 \ud0c0\uc785\uc744 \ub098\ud0c0\ub0b4\ub294 \ubb38\uc81c\ub97c \ubaa8\ub4c8 \ud615\ud0dc\uc758 &#8216;\uc720\uc0ac \ud0c0\uc785&#8217;\uc5d0\uc11c \uc9c4\uc9dc \ud0c0\uc785\uc73c\ub85c \uc62e\uae30\uba74 \uc88b\uc740 \uc810\ub3c4 \uc788\uc9c0\ub9cc \uc548\ud0c0\uae5d\uac8c\ub3c4 \ud55c \uac00\uc9c0 \uc131\uc9c8\uc744 \uc783\uac8c \ub41c\ub2e4. \ubc14\ub85c \ub370\uc774\ud130\ud45c\ud604\ubd80\uac00 \uc0ac\uc6a9\uc790 \uc778\ud130\ud398\uc774\uc2a4\uc640 \ub5a8\uc5b4\uc9c0\uc9c0 \uc54a\uc740 \uc0c1\ud0dc\ub85c \ub0a8\ub294\ub2e4\ub294 \uc810\uc774\ub2e4.<\/p>\n<p>\uc0ac\uc6a9\ud558\ub294 \ud0c0\uc785\uc774 \uc790\uc8fc \ubc14\ub00c\uc9c0 \uc54a\ub294\ub2e4\ub4e0\uc9c0 \uc9c0\uc5ed \ubcc0\uc218\ub97c \uc0ac\uc6a9\ud574\uc11c \uae54\ub054\ud558\uace0 \ud6a8\uc728\uc801\uc73c\ub85c \uc791\uc5c5\ud560 \uc218 \uc788\ub294 \uacbd\uc6b0\uc5d0\ub294 \uad6c\uccb4 \ud0c0\uc785\uc774 \uc774\uc0c1\uc801\uc77c \ub54c\uac00 \ub9ce\ub2e4. \ud558\uc9c0\ub9cc \uc2a4\ud0dd\uc744 \uc0ac\uc6a9\ud558\ub294 \ud504\ub85c\uadf8\ub798\uba38\uc640 \uc2a4\ud0dd \uad6c\ud604\ubd80\uc640\uc758 \uad00\uacc4\ub97c \uc644\uc804\ud788 \ub04a\uc5b4 \ubc84\ub824\uc57c \ud560 \ub54c\ub3c4 \uc788\ub294\ub370, \uc774 \uacbd\uc6b0\uc5d0\ub294 stack \ud074\ub798\uc2a4\ub85c\ub3c4 \uc5b4\ub9bc\uc5c6\ub2e4. \ud574\uacb0\ucc45\uc740 \ub2e8 \ud558\ub098, \uc778\ud130\ud398\uc774\uc2a4\uc640 \ub370\uc774\ud130\ud45c\ud604\ubd80\ub97c \ub5bc\uc5b4 \ub193\uace0 \uc9c0\uc5ed \ubcc0\uc218\ub97c \ud3ec\uae30\ud558\ub294 \uac83\uc774\ub2e4.<\/p>\n<p>\uc6b0\uc120, \uc778\ud130\ud398\uc774\uc2a4\ub97c \uc774\ub807\uac8c \uc815\uc758\ud55c\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; class stack { public: class underflow { }; class overflow { }; virtual void ush(char c) = 0; virtual char pop( ) = 0; }; &lt;\/TEXTAREA&gt;<\/p>\n<p>virtual \uc774\ub780 \ud0a4\uc6cc\ub4dc\uac00 \ubd99\uc740 \ud568\uc218\ub294 \uc774 \ud074\ub798\uc2a4\ub85c\ubd80\ud130 \ud30c\uc0dd\ub41c \ud074\ub798\uc2a4\uc5d0\uc11c \ub098\uc911\uc5d0 \uc7ac\uc815\uc758\ub420 \uc218 \uc788\ub2e4\ub294 \uac83\uc744 \uc758\ubbf8 \ud55c\ub2e4. \uc815\ub9ac\ud558\uba74, \uc774 stack\uc740 <span style=\"font-size: 10pt;\"><strong><em>push( )<\/em><\/strong><\/span>\uc640 <span style=\"font-size: 10pt;\"><strong><em>pop( ) <\/em><\/strong><\/span>\ud568\uc218\ub97c &#8216;\uad6c\ud604&#8217; \ud558\uac8c \ub420 \ubbf8\uc9c0\uc758 \ud074\ub798\uc2a4\uc5d0\uac8c \uc778\ud130\ud398\uc774\uc2a4, \uc989 \ud2c0\ub9cc\uc744 \uc81c\uacf5\ud558\ub294 \uac83\uc774\ub2e4.<\/p>\n<p>\uc774 stack\uc740 \uc5b4\ub5bb\uac8c \uc0ac\uc6a9 \ub420\uae4c? \ub2e4\uc74c\uc744 \ubcf4\uc790.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; void f(stack&amp; s_ref) { s_ref.push(&#8216;c&#8217;); if(s_ref:pop( ) != &#8216;c&#8217;) trow bad_pop( ); } &lt;\/TEXTAREA&gt;<\/p>\n<p><span style=\"font-size: 10pt;\"><strong><em>f( )<\/em><\/strong><\/span>\ub294 \uc2e4\uc81c \uad6c\ud604\ubd80\ub97c \uc804\ud600 \ubaa8\ub974\uace0\ub3c4 stack \uc778\ud130\ud398\uc774\uc2a4\ub97c \uc0ac\uc6a9 \ud558\uace0 \uc788\ub2e4. \uc774\ub807\uac8c \ub2e4\ub978 \ud074\ub798\uc2a4\uac00 \uc4f8 \uc218 \uc788\ub294 \uc778\ud130\ud398\uc774\uc2a4\ub97c \uc81c\uacf5\ud558\ub294 \ud074\ub798\uc2a4\ub97c \uac00\ub9ac\ucf1c \ub2e4\ud615\uc131 \ud0c0\uc785(polymorphic type)\uc774\ub77c\uace0 \ud55c\ub2e4.<\/p>\n<p>stack\uc774 \uc778\ud130\ud398\uc774\uc2a4\uac00 \ub410\uc73c\ubbc0\ub85c, stack\uc774 \uad6c\uccb4 \ud0c0\uc785\uc774\uc5c8\uc744 \ub54c \uac00\uc9c0\uace0 \uc788\ub358 \uac83\ub4e4\uc744 \uc804\ubd80 \ub5bc\uc5b4 \ub0b4\uba74 \uad6c\ud604\ubd80\ub97c \uad6c\uc131\ud560 \uc218 \uc788\uc744 \uac83\uc774\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8212;&#8211;<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.5.5 \uac00\uc0c1 \ud568\uc218 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-size: 10pt;\"><strong><em>f( )<\/em><\/strong><\/span>\uc5d0 \ub4e4\uc5b4\uc788\ub294 <span style=\"font-size: 10pt;\"><strong><em>s_ref:pop( )<\/em><\/strong><\/span>\uc740 \uc5b4\ub5bb\uac8c \ud574\ub2f9 \ud074\ub798\uc2a4\uc758 \ud568\uc218 \uc815\uc758\ubd80\ub85c \uc815\ud655\ud788 \ud574\uc11d(resolve)\ub418\ub294 \uac83\uc77c\uae4c? <span style=\"font-size: 10pt;\"><strong><em>h( )<\/em><\/strong><\/span>\uc5d0\uc11c \ud638\ucd9c\ub418\ub294 <span style=\"font-size: 10pt;\"><strong><em>f( )<\/em><\/strong><\/span>\uc5d0\uc11c\ub294 <span style=\"font-size: 10pt;\"><strong><em>list_stack::pop( )<\/em><\/strong><\/span>\uc774 \ud638\ucd9c \ub418\uc5b4\uc57c \ud558\uace0 <span style=\"font-size: 10pt;\"><strong><em>g( )<\/em><\/strong><\/span>\uc5d0\uc11c <span style=\"font-size: 10pt;\"><strong><em>f( )<\/em><\/strong><\/span>\uac00 \ud638\ucd9c\ub418\ub294 \uacbd\uc6b0\uc5d0\ub294 <span style=\"font-size: 10pt;\"><strong><em>array_stack::pop( )<\/em><\/strong><\/span>\uc774 \ud638\ucd9c\ub418\uc5b4\uc57c \ud55c\ub2e4. \uc801\uc808\ud55c \ud568\uc218 \uc815\uc758\ub97c \ucc3e\uc544\ub0b4\ub824\uba74, \ub7f0\ud0c0\uc784\uc5d0 \ud638\ucd9c\ub420 \ud568\uc218\ub97c \uac00\ub9ac\ud0a4\ub294 \uc815\ubcf4\uac00 stack\uac1d\uccb4 \uc5b4\ub518\uac00\uc5d0 \ub4e4\uc5b4 \uc788\uc5b4\uc57c \ud55c\ub2e4. \uc774 \ub9e4\ucee4\ub2c8\uc998\uc740 \uc77c\ubc18\uc801\uc73c\ub85c \ucef4\ud30c\uc77c\ub7ec \ucabd\uc5d0\uc11c virtual \ud0a4\uc6cc\ub4dc\uac00 \ubd99\uc740 \ud568\uc218\uc758 \uc774\ub984\uc744 \ud568\uc218 \ud3ec\uc778\ud130 \ud14c\uc774\ube14\uc758 \uc0c9\uc778\ubc88\ud638\ub85c \ubc14\uafb8\ub294 \uc2dd\uc73c\ub85c \ub9cc\ub4e4\uc5b4\uc838 \uc788\ub2e4. \uc774 \ud14c\uc774\ube14\uc744 \uac00\ub9ac\ucf1c \uac00\uc0c1 \ud568\uc218 \ud14c\uc774\ube14(virtual function table) \uc774\ub77c\uace0 \ud558\uba70, \uc9e7\uac8c vtbl\uc774\ub77c\uace0 \ud55c\ub2e4.<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt; color: #0070c0;\"><strong>2.6 \uac1d\uccb4 \uc9c0\ud5a5 \ud504\ub85c\uadf8\ub798\ubc0d <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\uc0ac\uc6a9\uc790 \uc815\uc758 \ud0c0\uc785\ub9cc \uc37c\uc744 \ub54c \uc0dd\uae30\ub294 \ubb38\uc81c \uadf8\ub9ac\uace0 \uc774 \ubb38\uc81c\ub97c \ub6f0\uc5b4\ub118\ub294 \ud574\uacb0\ucc45\uc778 \ud074\ub798\uc2a4 \uacc4\ud1b5\uc774\ub780 \uac83\uc744 \uc0b4\ud3b4\ubcf4\uc790<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.6.1 \uad6c\uccb4 \ud0c0\uc785\uc758 \uacb0\uc815\uc801 \uc57d\uc810 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\uad6c\uccb4\ud0c0\uc785\uc740 \uc77c\ub2e8 \ud55c\ubc88 \ub9cc\ub4e4\uc5b4\uc9c0\uace0 \ub098\uba74 \uc678\ubd80\uc5d0\uc11c \ud1b5\ud560 \uc218 \uc788\ub294 \uae38\uc774 \uadf9\ud788 \ud55c\uc815\ub418\uc5b4 \uc788\ub2e4. \uc608\ub97c \ub4e4\uc5b4 \uadf8\ub798\ud53d \uc2dc\uc2a4\ud15c\uc5d0 \uc0ac\uc6a9 \ud558\ub824\uace0 shape\ub780 \ud0c0\uc785\uc744 \ud558\ub098 \uc815\uc758 \ud55c\ub2e4\uace0 \uac00\uc815\ud574 \ubcf4\uc790. \uadf8\ub9ac\uace0 \ub2e4\uc74c\uacfc \uac19\uc740 \ud0c0\uc785\ub3c4 \uc788\ub2e4\uace0 \uac00\uc815\ud558\uc790.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; class Point{\/*&#8230;*\/}; class Color{\/*&#8230;*\/}; &lt;\/TEXTAREA&gt;<\/p>\n<p>\ub3c4\ud615(shape)\uc744 \ub098\ud0c0\ub0b4\ub294 \ud0c0\uc785\uc744 \uc815\uc758\ud574 \ubcf4\uc790<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; enum kind {circle, triangle, square}; \/\/\ub098\uc5f4\uc790 \ud0c0\uc785 class shape { kind k; \/\/\ub3c4\ud615 \ud0c0\uc785 \ud544\ub4dc point center; color col; \/\/ &#8230; public: void draw( ); void rotate(int); \/\/&#8230; }; &lt;\/TEXTAREA&gt;<\/p>\n<p>&#8216;\ub3c4\ud615 \ud0c0\uc785 \ud544\ub4dc&#8217;\ub780 \uc774\ub984\uc774 \ubd99\uc740 k\ub77c\ub294 \ubcc0\uc218\uac00 \uc788\uc5b4\uc57c \ud558\ub294 \uc774\uc720\ub294 draw( )\uc640 rotate( )\uc5d0\uc11c \uc790\uc2e0\uc774 \ucc98\ub9ac\ud558\ub294 \ub3c4\ud615\uc774 \uc5b4\ub5a4 \uac83\uc778\uc9c0\ub97c \uad6c\ubd84\ud560 \uc218 \uc788\uc5b4\uc57c \ud558\uae30 \ub54c\ubb38\uc774\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8230;.<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.6.2 \ud074\ub798\uc2a4 \uacc4\ud1b5 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\ubb38\uc81c\uc758 \ud575\uc2ec\uc740, \ub3c4\ud615\ub9c8\ub2e4 \uac00\uc9c0\uace0 \uc788\ub294 \uc77c\ubc18\uc801\uc778 \uc131\uc9c8\uacfc \uadf8 \ub3c4\ud615\ub9cc\uc758 \uace0\uc720\ud55c \uc131\uc9c8\uc774 \uba85\ud655\ud558\uac8c \uac08\ub77c\uc9c0\uc9c0 \uc54a\uc558\ub2e4\ub294 \ub370 \uc788\ub2e4. \uc774 \ucc28\uc774\ub97c \uc5b8\uc5b4\ub85c \ub098\ud0c0\ub0b4\uace0 \uc774\uc6a9\ud558\ub294 \uac83\uc774 \ubc14\ub85c \uac1d\uccb4\uc9c0\ud5a5 \ud504\ub85c\uadf8\ub798\ubc0d\uc774\ub2e4.<\/p>\n<p>\uc77c\ubc18\uc131\uacfc \ud2b9\uc218\uc131\uc758 \uad6c\ubd84\uc744 \uc774\ub8e8\uc5b4 \ub0b4\ub294 \ub2f5\uc740 \ubc14\ub85c \uc0c1\uc18d \uba54\ucee4\ub2c8\uc998\uc774\ub2e4. \uc6b0\uc120 \ub3c4\ud615\ub9c8\ub2e4 \uacf5\ud1b5\uc801\uc73c\ub85c \uac00\uc9c4 \uc131\uc9c8\uc744 \uc815\uc758\ud558\ub294 \ud074\ub798\uc2a4\ub97c \ub9cc\ub4e0\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; class Shape { point center; color col; \/\/&#8230; public: point where( ) {return center;} void move(Point to) { center = to; \/*&#8230;*\/ draw( ); } virtual void draw( ) = 0; virtual void rotate(int angle) = 0; \/\/&#8230; }; &lt;\/TEXTAREA&gt;<\/p>\n<p>\ud638\ucd9c \uc778\ud130\ud398\uc774\uc2a4\ub294 \uc815\uc758\ud560 \uc218 \uc788\uc9c0\ub9cc \uad6c\ud604\ucf54\ub4dc\ub294 \ubc14\ub85c \uc81c\uacf5\ud558\uc9c0 \uc54a\uc544\ub3c4 \ub418\ub294 \ud568\uc218\ub97c \uac00\uc0c1 \ud568\uc218\ub85c \uc120\uc5b8\ub41c\ub2e4. (draw( ), rotate( ) )<\/p>\n<p>\uc774\ub807\uac8c \ud074\ub798\uc2a4\ub97c \uc815\uc758\ud574 \ub450\uc5c8\uc73c\uba74 \ub3c4\ud615\uc5d0 \ub300\ud55c \ud3ec\uc778\ud130\ub97c \ub2f4\uc740 \ubca1\ud130\ub97c \uc870\uc791\ud558\ub294 \uc77c\ubc18\ud568\uc218\ub97c \ub9cc\ub4e4\uc5b4\uc11c \uc77c\uad04\uc801\uc73c\ub85c \ucc98\ub9ac\ud560 \uc218 \uc788\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;void rotate-all(vetor&lt;Shape*&gt;&amp; v, int angle) \/\/v\uc758 \uc6d0\uc18c\uac00 \ub418\ub294 \uac01 \ub3c4\ud615\uc744 angle\ub3c4 \ub9cc\ud07c \ud68c\uc804 { for (int i = 0; i&lt;v.size(); ++i) v[i] -&gt; rotate(angle); }&lt;\/TEXTAREA&gt;<\/p>\n<p>\uc774\uc81c \ud2b9\uc815\ud55c \ub3c4\ud615\uc744 \uc815\uc758\ud55c\ub2e4. &#8216;\uc774\uac83\uc740 \ub3c4\ud615\uc774\ub2e4&#8217;\ub77c\uace0 \uc54c\ub824 \uc90c\uacfc \ub3d9\uc2dc\uc5d0 \uac1c\ubcc4\uc801\uc778 \uc131\uc9c8\uc744 \uc9c0\uc815\ud574 \uc8fc\ub294 \uac83\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; class circle : public shape { int radious; public: void draw( ) {\/*&#8230;*\/} void rotate(int) { } \/\/\uc544\ubb34\uac83\ub3c4 \uc548 \ud558\ub294 \ud568\uc218 }; &lt;\/TEXTAREA&gt;<\/p>\n<p>\ud30c\uc0dd \ud074\ub798\uc2a4\ub294 \uae30\ubcf8 \ud074\ub798\uc2a4\uac00 \uac00\uc9c4 \ubaa8\ub4e0 \uac83\uc744 \ubb3c\ub824 \ubc1b\uae30 \ub54c\ubb38\uc5d0, \uc774\ub7f0 \ud074\ub798\uc2a4\uc758 \uad00\uacc4\ub97c \uc774\uc6a9\ud558\ub294 \uac83\uc744 \uc0c1\uc18d \uc774\ub77c\uace0 \ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p>\uac1d\uccb4 \uc9c0\ud5a5 \ud504\ub85c\uadf8\ub798\ubc0d\uc758 \uc774\ub860\uc801 \ud2c0\uc740 \ub2e4\uc74c\uacfc \uac19\ub2e4.<\/p>\n<ul style=\"margin-left: 40pt;\">\n<li>\n<div style=\"text-align: justify;\">\ubb38\uc81c \ud574\uacb0\uc5d0 \ud544\uc694\ud55c \ud074\ub798\uc2a4\uac00 \ubb34\uc5c7\uc778\uc9c0 \uc815\ud55c\ub2e4.<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\ud074\ub798\uc2a4\uc5d0 \ub300\ud574 \ubaa8\ub4e0 \ud568\uc218 \uc9d1\ud569\uc744 \ub9cc\ub4e4\uc5b4 \uc900\ub2e4.<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\ud074\ub798\uc2a4 \uc0ac\uc774\uc758 \uacf5\ud1b5\uc801\uc778 \ubd80\ubd84\uc744 \uc0c1\uc18d\uad00\uacc4\ub97c \uc368\uc11c \ub4dc\ub7ec\ub0b8\ub2e4.<\/div>\n<\/li>\n<\/ul>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt; color: #0070c0;\"><strong>2.7 \uc77c\ubc18\ud654 \ud504\ub85c\uadf8\ub798\ubc0d <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\uc77c\ubc18\ud654 \ud504\ub85c\uadf8\ub7a8\uc758 \uc774\ub860\uc801\uc778 \ud2c0\uc740 \ub2e4\uc74c\uacfc \uac19\ub2e4.<\/p>\n<ul style=\"margin-left: 40pt;\">\n<li>\n<div style=\"text-align: justify;\">\ubb38\uc81c \ud574\uacb0\uc5d0 \ud544\uc694\ud55c \uc54c\uace0\ub9ac\uc998\uc744 \uc815\ud55c\ub2e4.<\/div>\n<\/li>\n<li>\n<div style=\"text-align: justify;\">\uc774\ub4e4 \uc54c\uace0\ub9ac\uc998\uc774 \uc5ec\ub7ec \uac00\uc9c0\uc758 \ud0c0\uc785\uacfc \uc790\ub8cc \uad6c\uc870\uc5d0 \ub300\ud574 \ub3d9\uc791 \ud560 \uc218 \uc788\ub3c4\ub85d \uc54c\uace0\ub9ac\uc998\uc744 \ub9e4\uac1c\ubcc0\uc218\ud654\ud55c\ub2e4.<\/div>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.7.1 \ucee8\ud14c\uc774\ub108 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>C++\uc5d0\uc11c\ub294 \uc55e\uc5d0\uc11c \ub9cc\ub4e4\ub358 &#8216;\ubb38\uc790\ub9cc \ub2f4\ub294 \uc2a4\ud0dd&#8217; \ud0c0\uc785\uc744 &#8216;\uc5b4\ub290 \uac83\uc774\ub4e0 \ub2f4\ub294 \uc2a4\ud0dd&#8217; \ud0c0\uc785\uc73c\ub85c \ubc14\uafc0\uc218 \uc788\ub294 \ubc29\ubc95\uc774 \uc788\ub294\ub370, \ud0c0\uc785\uc744 \ud15c\ud50c\ub9bf(template)\uc73c\ub85c \ub9cc\ub4e4\uace0 char\ub77c\ub294 \ud2b9\uc815\ud55c \ud0c0\uc785\uc744 \ud0ec\ud50c\ub9bf \ub9e4\uac1c\ubcc0\uc218\ub85c \ubc14\uafb8\ub294 \uac83\uc774\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; template &lt;class T&gt; class stack { T*v; int max_size; int top; public: class underflow{ }; class overflow{ }; stack(int s); \/\/\uc0dd\uc131\uc790 ~stack( ); \/\/\uc18c\uba78\uc790 void push(T); T pop( ); }; &lt;\/TEXTAREA&gt;<\/p>\n<p>&nbsp;<\/p>\n<p>\ud074\ub798\uc2a4 \uc774\ub984\uc758 \uc55e\uc5d0 \ubd99\uc740 <span style=\"font-size: 10pt;\"><strong><em>template&lt;class T&gt; <\/em><\/strong><\/span>\ub77c\ub294 \uc811\ub450\uc0ac\uac00 \ubc14\ub85c T\ub97c \uc774 \ud0c0\uc785\uc758 \ub9e4\uac1c \ubcc0\uc218\ub85c \ub9cc\ub4e4\uc5b4 \uc8fc\ub294 \ubd80\ubd84\uc774\ub2e4.<\/p>\n<p>\uba64\ubc84 \ud568\uc218\uc758 \ucf54\ub4dc \uc815\uc758\ub294 \uc774\uc804\uc758 \uac83\uacfc \ud06c\uac8c \ub2e4\ub974\uc9c0 \uc54a\uc73c\ub098 T\ub97c \uace0\ub824\ud574\uc11c \uc774\ub8e8\uc5b4\uc9c4\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; template&lt;class T&gt; void stack&lt;T&gt;:: push(T c) { if (top == max_size) throw overflow( ); v[top] = c; top = top + 1; } template&lt;class T&gt;T stack&lt;T&gt;:: pop( ) { if ( top == 0 ) throw underflow( ); top = top -1; return v[top]; } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc774\ub807\uac8c \ub9cc\ub4e0 \uc2a4\ud0dd(\ud15c\ud50c\ub9bf)\uc740 \ub2e4\uc74c\uacfc \uac19\uc774 \uc0ac\uc6a9 \ud55c\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; stack&lt;shar&gt;sc(200); \/\/200\uac1c\uc758 \ubb38\uc790\ub97c \ub2f4\ub294 \uc2a4\ud0dd stack&lt;complex&gt;scplx(30); \/\/30\uac1c\uc758 \ubcf5\uc18c\uc218\ub97c \ub2f4\ub294 \uc2a4\ud0dd stack&lt;list&lt;int&gt; &gt; sli(45); \/\/45\uac1c\uc758 \uc815\uc218 \ub9ac\uc2a4\ud2b8\ub97c \ub2f4\ub294 \uc2a4\ud0dd void f( ) { sc.push(&#8216;c&#8217;); if(sc.pop( ) != &#8216;c&#8217;) throw bad_pop( ); scplx.push(complex)(1.2)); if (scplx.pop( ) != complex(1,2)) throw bad_pop( ); } &lt;\/TEXTAREA&gt;<\/p>\n<p>\uc5ec\uae30\uc11c \ubcf4\uc778 \uc2a4\ud0dd\ucc98\ub7fc \ub9ac\uc2a4\ud2b8, \ubca1\ud130, \ub9f5 \uac19\uc740 \uac83\ub4e4\ub3c4 \ud15c\ud50c\ub9bf\uc73c\ub85c \uc815\uc758\ud560 \uc218 \uc788\ub2e4. \uc774\ub807\uac8c \uc5b4\ub5a4 \ud0c0\uc785\uc758 \uc6d0\uc18c\ub97c \ubaa8\uc544\uc11c \ub2f4\uc744 \uc218 \uc788\ub294 \ud074\ub798\uc2a4\ub97c \uac00\ub9ac\ucf1c \ucee8\ud14c\uc774\ub108 \ud074\ub798\uc2a4\ub77c\uace0 \ud55c\ub2e4. \ud3b8\ud558\uac8c \ucee8\ud14c\uc774\ub108(container)\ub77c\uace0 \ubd88\ub7ec \uc8fc\uae30 \ubc14\ub780\ub2e4.<\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt; color: #7030a0;\"><strong>2.7.2 \uc77c\ubc18\ud654 \uc54c\uace0\ub9ac\uc998 <\/strong><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>C++ \ud45c\uc900 \ub77c\uc774\ube0c\ub7ec\ub9ac\uc5d0\ub294 \uc704\uc5d0\uc11c \uc774\uc57c\uae30\ud55c \ucee8\ud14c\uc774\ub108\ub77c\uace0 \ubd88\ub9ac\ub294 \uac83\ub4e4\uc774 \ub4e4\uc5b4 \uc788\uc73c\uba70, \uc5c6\ub294 \ucee8\ud14c\uc774\ub108\ub294 \uc9c1\uc811 \ub9cc\ub4e4 \uc218 \uc788\ub2e4.<\/p>\n<p>\ucee8\ud14c\uc774\ub108\uac00 \uc815\ud655\ud788 \uc5b4\ub5bb\uac8c \uc0dd\uacbc\ub294\uc9c0 \ubab0\ub77c\ub3c4 \uadf8 \ucee8\ud14c\uc774\ub108\ub97c \uc870\uc791\ud560 \uc218 \uc788\ub294 \uc77c\ubc18\ud654\ub41c \ubc29\ubc95\uc744 \ucc3e\uc544\uc57c \ud55c\ub2e4. \uc5ec\uae30\uc5d0\ub294 \uc5ec\ub7ec \uac00\uc9c0 \ubc29\ubc95\uc774 \uc788\uc744 \uc218 \uc788\uaca0\uc73c\ub098 \ud45c\uc900 C++ \ub77c\uc774\ube0c\ub7ec\ub9ac\uc5d0\uc11c \uc81c\uacf5\ud558\ub294 \ucee8\ud14c\uc774\ub108\uc640 \ube44\uc218\uce58\ud615 \uc54c\uace0\ub9ac\uc998\uc5d0\uc11c \ucde8\ud55c \ubc29\ubc95\uc740 \uc6d0\uc18c\ub4e4\uc774 \uc21c\uc11c\ub300\ub85c \uc5f0\uacb0\ub41c \uc2dc\ud038\uc2a4\ub77c\ub294 \uac1c\ub150\uc73c\ub85c \ucee8\ud14c\uc774\ub108\ub97c \ubaa8\ub378\ub9c1\ud558\uace0 \uc774 \uc2dc\ud038\uc2a4\ub97c \ubc18\ubcf5\uc790\ub77c\ub294 \uac83\uc73c\ub85c \uc870\uc791\ud558\uac8c \ub9cc\ub4dc\ub294 \uac83\uc774\uc5c8\ub2e4.<\/p>\n<p>\ud558\ub098\uc758 \uc2dc\ud038\uc2a4\uc5d4 \ubc18\ub4dc\uc2dc \uc2dc\uc791\uacfc \ub05d\uc774 \uc874\uc7ac\ud55c\ub2e4. \ubc18\ubcf5\uc790\ub294 \uc2dc\ud038\uc2a4 \uc548\uc758 \uc6b0\ub108\uc18c\ub97c \uac00\ub9ac\ud0a4\uace0 \uc790\uc2e0\uc774 \ucc38\uc870\ud558\ub294 \uc6d0\uc18c\uc758 \ub2e4\ub984 \uac83\uc73c\ub85c \uc62e\uaca8\uac08 \uc218 \uc788\ub294 \uc5f0\uc0b0\uc744 \uc81c\uacf5\ud55c\ub2e4. \uc77c\ubc18\ud654 \ud504\ub85c\uadf8\ub798\ubc0d\uc5d0\uc11c \uc2dc\ud038\uc2a4\uc758 \ub05d\uc740 \uc2dc\ud038\uc2a4\uc758 \ub9c8\uc9c0\ub9c9 \uc6d0\uc18c\uc758 \ubc14\ub85c \ub2e4\uc74c\uc744 \uac00\ub9ac\ud0a4\ub294 \ubc18\ubcf5\uc790\ub97c \ub73b\ud55c\ub2e4. \ub610\ud55c &#8216;\ubc18\ubcf5\uc790\uac00 \uac00\ub9ac\ud0a4\ub294 \uc6d0\uc18c\uc5d0 \uc811\uadfc\ud558\uae30&#8217;\uc640 &#8216;\ubc18\ubcf5\uc790\ub97c \ub2e4\uc74c \uc6d0\uc18c\ub85c \uc62e\uae30\uae30&#8217; \uac19\uc740 \uae30\ubcf8\uc801\uc778 \uc5f0\uc0b0\uc5d0 \ub300\ud55c \ud45c\uc900 \ubc29\uc2dd\ub3c4 \uc774\ubbf8 \uc815\ud574\uc838 \uc788\ub2e4. \uc6b0\ub9ac\ub4e4\uc774 \uc27d\uac8c \uc811\uadfc\ud558\uace0, \uc99d\uac00 \uc5f0\uc0b0\uc790\uc778 ++\ub97c \uc368\uc11c \ub2e4\uc74c \uc6d0\uc18c\ub85c \uc62e\uaca8 \uac00\uac8c \ud55c\uac83\uc774\ub2e4. \uadf8\ub807\uae30 \ub54c\ubb38\uc5d0 \uc774\ub7f0 \uc2dd\uc758 \ucf54\ub529\uc774 \uac00\ub2a5\ud558\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt;template&lt;class in, class out&gt; void copy(in from, in too_far, out to) { while (from != too_far) { *to = *from; \/\/\ubc18\ubcf5\uc790\uac00 \uc9c0\uae08 \ucc38\uc870\ud558\uace0 \uc788\ub294 \uc6d0\uc18c\ub97c \ubcf5\uc0ac\ud55c\ub2e4. ++to; \/\/\ub300\uc0c1\uc774 \ub418\ub294 \uacf3\uc758 \ubc18\ubcf5\uc790\ub97c \uc99d\uac00\uc2dc\ud0a8\ub2e4. ++from; \/\/\ubc14\ud0d5\uc774 \ub418\ub294 \uacf3\uc758 \ubc18\ubcf5\uc790\ub97c \uc99d\uac00\uc2dc\ud0a8\ub2e4. } } &lt;\/TEXTAREA&gt;<\/p>\n<p>C++\uc5d0\uc11c \uae30\ubcf8\uc801\uc73c\ub85c \uc81c\uacf5\ub418\ub294 \ubc30\uc5f4\uacfc \ud3ec\uc778\ud130 \ud0c0\uc785\uc740 \ubc18\ubcf5\uc790 \uc5f0\uc0b0\uc5d0 \uc815\ud655\ud788 \ub9de\uc544 \ub5a8\uc5b4\uc9c0\uae30 \ub54c\ubb38\uc5d0 \ub2e4\uc74c\uacfc \uac19\uc774 \uc791\uc131\ud560 \uc218 \uc788\ub2e4.<\/p>\n<p>&lt;TEXTAREA class=c name=code row=&#8221;10&#8243; col=&#8221;60&#8243;&gt; char vc1[200]; \/\/200\uac1c \ubb38\uc790\ub97c \ub2f4\ub294 \ubc30\uc5f4 char vc2[500]; \/\/500\uac1c \ubb38\uc790\ub97c \ub2f4\ub294 \ubc30\uc5f4 void f( ) { copy(&amp;vc1{0}, &amp;vc1[200], &amp;vc2[0]); } &lt;\/TEXTAREA&gt;<\/p>\n<p>vc1\uc758 \uccab \uc6d0\uc18c\ubd80\ud130 \ub05d \uc6d0\uc18c\uae4c\uc9c0\ub97c vc2\uc5d0 \ubcf5\uc0ac\ud558\ub294 \ucf54\ub4dc\ub85c, \ub300\uc0c1\uc704\uce58\ub294 vc2\uc758 \ucc98\uc74c\ubd80\ud130 \uc2dc\uc791\ud55c\ub2e4.<\/p>\n<p><a class=\"aligncenter\" href=\"http:\/\/192.168.0.71:9090:8080\/wp-content\/uploads\/2008\/08\/hk69.pdf\">hk69.pdf<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; The C++ Programming Language 2\uc7a5 \uc6cc\ubc0d\uc5c5 : C++ \ub458\ub7ec\ubcf4\uae30 &nbsp; 2.1 C++ \uc774\ub780 \ubb34\uc5c7\uc778\uac00? &nbsp; \ubaa8\ub4e0 \uc6a9\ub3c4\uc5d0 \uc4f8\uc218 \uc788\uc73c\uba70 \uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d\uc5d0 \uac15\ud55c \ud504\ub85c\uadf8\ub798\ubc0d \uc5b8\uc5b4 &nbsp; C++\uc758 \uae30\ubcf8 \uc131\uaca9 C\ub97c \uae30\ubcf8\uc73c\ub85c \ubc1c\uc804\uc2dc\ud0a8 \uc5b8\uc5b4 \ub370\uc774\ud130 \ucd94\uc0c1\ud654\ub97c \uc9c0\uc6d0 \uac1d\uccb4 \uc9c0\ud5a5 \ud504\ub85c\uadf8\ub798\ubc0d\uc744 \uc9c0\uc6d0 \uc77c\ubc18\ud654 \ud504\ub85c\uadf8\ub798\ubc0d\uc744 \uc9c0\uc6d0 2.2 C++\ub294 \ud504\ub85c\uadf8\ub798\ubc0d \ud328\ub7ec\ub2e4\uc784\uc774 \ud55c\ub450 \uac1c\uac00 \uc544\ub2c8\ub2e4 &nbsp; \uac1d\ucc44 \uc9c0\ud5a5 \ud504\ub85c\uadf8\ub798\ubc0d\uc740 &#8216;\ud6cc\ub96d\ud55c&#8217; [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":""},"categories":[18],"tags":[67,479,254,260],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/sXV5a-xfile","_links":{"self":[{"href":"https:\/\/talsu.net\/index.php?rest_route=\/wp\/v2\/posts\/2213"}],"collection":[{"href":"https:\/\/talsu.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/talsu.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/talsu.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/talsu.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2213"}],"version-history":[{"count":2,"href":"https:\/\/talsu.net\/index.php?rest_route=\/wp\/v2\/posts\/2213\/revisions"}],"predecessor-version":[{"id":2272,"href":"https:\/\/talsu.net\/index.php?rest_route=\/wp\/v2\/posts\/2213\/revisions\/2272"}],"wp:attachment":[{"href":"https:\/\/talsu.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2213"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/talsu.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2213"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/talsu.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}