|
|
|
|
|
|
|
Ã¥³»¿ë |
|
ÀÌ Ã¥À̾߸»·Î C++ ÃֽŠ¹öÀüÀ» ±í°Ô °øºÎÇÏ°íÀÚ ÇÏ´Â »ç¶÷ÀÌ ´çÀå Àоî¾ß ÇÒ Ã¥ÀÌ´Ù. ¿Ï°áÀûÀÎ °¡À̵åÀÎ ÀÌ Ã¥¿¡¼ ÀúÀÚ´Â C++20ÀÇ µÎµå·¯Áø ÁÖ¿ä ±â´É»Ó¸¸ ¾Æ´Ï¶ó »ç¼ÒÇÑ Ãß°¡¡¤°³¼± »çÇ×µµ ¸ðµÎ ³íÀÇÇÑ´Ù. ¼ö¸¹Àº ¿¹Á¦ ÄÚµå¿Í ½ºÅ©¸°¼¦ ´öºÐ¿¡, ¾ÆÁ÷ ÃֽŠÄÄÆÄÀÏ·¯¸¦ °®ÃßÁö ¾ÊÀº µ¶ÀÚ¶óµµ ¿©·¯ »õ ±â´É¿¡¼ ¹«¾ùÀ» ±â´ëÇÒ ¼ö ÀÖÀ»Áö¸¦ Àß ÆľÇÇÒ ¼ö ÀÖ´Ù. Àϵ¶À» °·ÂÈ÷ ±ÇÇÑ´Ù.¡± - »êµµ¸£ ´Ù¸£°í(Sandor Dargo), AmadeusÀÇ ¼±ÀÓ ¼ÒÇÁÆ®¿þ¾î °³¹ß °øÇÐÀÚ
¡°C++Àº ź»ý ÀÌÈÄ ¸¹ÀÌ ÁøÈÇß´Ù. C++20Àº »õ·Î¿î ¾ð¾îó·³ ´À²¸Áø´Ù. ÀÌ Ã¥ÀÌ »ó¼ÓÀ̳ª Áߺ¹ÀûÀç °°Àº °ÍÀ» °¡¸£Ä¡´Â C++ ÀÔ¹®¼°¡ ¾Æ´ÔÀº È®½ÇÇÏ´Ù. ±×º¸´Ù´Â, ÀÚ½ÅÀÇ C++ Áö½ÄÀ» ÃÖ½ÅÀ¸·Î °»½ÅÇÏ°íÀÚ ÇÏ´Â »ç¶÷¿¡°Ô µü ¸Â´Â Ã¥ÀÌ´Ù. C++20¿¡¼ ¾î¶² »õ·Î¿î ±â´ÉÀÌ C++¿¡ Ãß°¡µÇ¾ú´ÂÁö ¾Ë°Ô µÇ¸é ³î¶ó¿òÀ» ±ÝÄ¡ ¸øÇÒ °ÍÀÌ´Ù. ÀÌ Ã¥Àº »õ ±â´ÉµéÀ» °£°áÇÑ ¿¹Á¦¿Í ÇÔ²² ¸íÈ®ÇÏ°Ô ¼³¸íÇÑ´Ù. °Ô´Ù°¡ ÀÌ Ã¥Àº ³ªÁß¿¡ ·¹ÆÛ·±½º·Îµµ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ±¸¼ºµÇ¾î ÀÖ´Ù. ¿À·¡µÈ ¾ð¾îÀÇ Á·¼â¸¦ Ç®¾î¼ °·ÂÇÑ ¹Ì·¡·Î ³ª¾Æ°¡°Ô ÇÏ´Â µ¥ ÀÌ Ã¥ÀÌ µµ¿òÀÌ µÉ °ÍÀÌ´Ù.¡± - ¿¡À̵帮¾ð Ž(Adrian Tam), Synechron Inc.ÀÇ µ¥ÀÌÅÍ °úÇÐ µð·ºÅÍ |
|
¸ñÂ÷ |
|
1ºÎ ¼Ò°³
1Àå C++ ¼Ò°³
1.1 C++ Ç¥ÁØÀÇ ¿ª»ç
1.2 Ç¥ÁØÈ
2Àå C++20 µÑ·¯º¸±â
2.1 4´ë ±â´É
2.2 ÇÙ½É ¾ð¾î
2.3 Ç¥ÁØ ¶óÀ̺귯¸®
2.4 µ¿½Ã¼º
2ºÎ ¼¼ºÎ»çÇ×
3Àå ÇÙ½É ¾ð¾î
3.1 ÄܼÁÃ÷
3.2 ¸ðµâ
3.3 3Áß ºñ±³ ¿¬»êÀÚ
3.4 Áö¸í ÃʱâÈ
3.5 consteval°ú constinit
3.6 ÅÛÇø´ °³¼±»çÇ×
3.7 ¶÷´Ù °³¼±»çÇ×
3.8 »õ Ư¼ºµé
3.9 ±âŸ °³¼±»çÇ×
4Àå Ç¥ÁØ ¶óÀ̺귯¸®
4.1 ±¸°£ ¶óÀ̺귯¸®
4.2 std::span
4.3 ÄÁÅ×ÀÌ³Ê °³¼±»çÇ×
4.4 »ê¼ú À¯Æ¿¸®Æ¼
4.5 ´Þ·Â°ú ½Ã°£´ë
4.6 ¼½ÄÈ ¶óÀ̺귯¸®
4.7 ±âŸ °³¼±»çÇ×
5Àå µ¿½Ã¼º
5.1 ÄÚ·çƾ
5.2 ¿øÀÚÀû ¿¬»ê
5.3 ¼¼¸¶Æ÷¾î
5.4 ºøÀå°ú À庮
5.5 ÇùÁ¶Àû °¡·Îä±â
5.6 ÇÕ·ù °¡´É ½º·¹µå std::jthread
5.7 µ¿±âÈµÈ Ãâ·Â ½ºÆ®¸² °´Ã¼
6Àå »ç·Ê ¿¬±¸¿Í ½ÉÈ ¿¹Á¦
6.1 ºü¸¥ ½º·¹µå µ¿±âÈ
6.2 ¿©·¯ °¡Áö ¹Ì·¡ °´Ã¼ ±¸Çö
6.3 »ý¼º±âÀÇ ¼öÁ¤°ú ÀϹÝÈ
6.4 ´Ù¾çÇÑ ÀÛ¾÷ È帧
¸ÎÀ½¸»
ºÎ·Ï
ºÎ·Ï A C++23°ú ±× ÀÌÈÄ
A.1 C++23
A.2 C++23 ¶Ç´Â ±× ÀÌÈÄ
A.3 C++23¿¡ °üÇÑ Ãß°¡ Á¤º¸
ºÎ·Ï B ±â´É °Ë»ç
ºÎ·Ï C ¿ë¾îÁý
C.1 4´ë ±â´É
C.2 6´ë ¿¬»ê
C.3 POD
C.4 RAII
C.5 °¡Â¥ ±ú¾î³²
C.6 °´Ã¼ Çü½Ä
C.7 °æÀï Á¶°Ç
C.8 ±³Âø
C.9 ±ú¾î³² ¼Ò½Ç
C.10 ´ÜÃà Æò°¡
C.11 µ¥ÀÌÅÍ °æÀï
C.12 µ¿½Ã¼º
C.13 µ¿Àû ÀúÀå ±â°£
C.14 ¶÷´Ù Ç¥Çö½Ä
C.15 ¸®ÅÍ·² Çü½Ä
C.16 ¸Þ¸ð¸® ¸ðÇü
C.17 ¸Þ¸ð¸® Àå¼Ò
C.18 ¹«Àá±Ý
C.19 ¹ÌÁ¤ÀÇ Çൿ
C.20 ¹ø¿ª ´ÜÀ§
C.21 º´·Ä¼º
C.22 ºñÂ÷´Ü
C.23 ¼öÇÐ ¹ýÄ¢
C.24 ¼ú¾î
C.25 ½º·¹µå
C.26 ½º·¹µå ÀúÀå ±â°£
C.27 ½ºÄ®¶ó Çü½Ä
C.28 ½Ã°£ º¹Àâµµ
C.29 ½ÇÇà±â
C.30 ÀÓ°è ¿µ¿ª
C.31 ÀÚµ¿ ÀúÀå ±â°£
C.32 ÀÚ¸íÇÑ Çü½Ä
C.33 Á¤±Ô Çü½Ä
C.34 Á¤Àû ÀúÀå ±â°£
C.35 Á¶±ÞÇÑ Æò°¡
C.36 ÁØÁ¤±Ô Çü½Ä
C.37 Áö¿¬ Æò°¡
C.38 ÁýÇÕü
C.39 Ç¥ÁØ ¹èÄ¡ Çü½Ä
C.40 ÇÔ¼ö °´Ã¼
C.41 È£Ãâ °¡´É °´Ã¼ |
|
|
|
ÀúÀÚ
|
|
¶óÀÌ³Ê ±×¸²
20³â°£ ¼ÒÇÁÆ®¿þ¾î ¾ÆÅ°ÅØÆ®, ÆÀÀå, °»ç·Î ÀÏÇß´Ù. ¿©°¡ ¶§´Â C++, ÆÄÀ̽ã, ÇؽºÄÌÀ» ÁÖÁ¦·Î ±ÛÀ» ¾²¸ç, ÄÜÆÛ·±½º¿¡¼ °¿¬µµ ÇÑ´Ù. ÇöÀç ±×´Â Çö´ëÀûÀÎ C++°ú ÆÄÀ̽㿡 °üÇÑ ¼¼¹Ì³ª¸¦ Á¦°øÇÏ´Â ÇÁ¸®·£¼·Î ÀÏÇÏ°í ÀÖ´Ù. Àú¼·Î ¡ºC++11 f?r Programmierer¡», ¡ºC++¡»(°øÀú), ¡ºC++ -Standardbiliothek¡»µîÀÌ ÀÖ´Ù. ¼¼ ±Ç ¸ðµÎ µ¶ÀÏ O¡¯Reilly¿¡¼ ÃâÆÇÇÑ ¡®kurz & gut(¿µ¾îÀÇ short & good¿¡ ÇØ´ç)¡¯ ½Ã¸®ÁîÀÇ ÀϺÎÀÌ´Ù. ¶ÇÇÑ ±×´Â À¯¸íÇÑ µÎ ºí·Î±× http://www.grimm-jaud.de/index.php/blog(µ¶ÀϾî)¿Í http://www.ModernesCpp.com(¿µ¾î)ÀÇ ¿î¿µÀÚÀÌ´Ù.
|
ÇÙ½É C++ Ç¥ÁØ ¶óÀ̺귯¸® | ¶óÀÌ³Ê ±×¸² | ÀλçÀÌÆ®
ÇÙ½É C++ Ç¥ÁØ ¶óÀ̺귯¸® | ¶óÀÌ³Ê ±×¸² | ±æ¹þ
½±°Ô ¼³¸íÇÑ C++ ÇÙ½É °¡À̵å¶óÀÎ | ¶óÀÌ³Ê ±×¸² | ÀλçÀÌÆ®
|
¿ªÀÚ
|
|
·ù±¤
1996³âºÎÅÍ È°µ¿ÇØ ¿Â ÇÁ·Î±×·¡¹Ö ¼Àû Àü¹® ¹ø¿ª°¡·Î, Game Programming Gems ½Ã¸®Áî¿Í ÄÄÇ»ÅÍ ÇÁ·Î±×·¡¹ÖÀÇ ¿¹¼ú(The Art of Computer Programming) Á¦1~4A±Ç, UNIX °í±Þ ÇÁ·Î±×·¡¹Ö(Advanced Programming in UNIX Environment) Á¦2ÆÇ°ú Á¦3ÆÇÀ» Æ÷ÇÔÇÏ¿© 60¿© ±ÇÀÇ ´Ù¾çÇÑ ÇÁ·Î±×·¡¹Ö ¼ÀûÀ» ¹ø¿ªÇß´Ù. C++ °ü·Ã ¹ø¿ª¼·Î´Â ÀϹÝÀû ÇÁ·Î±×·¡¹Ö°ú STL, C++ Template Metaprogramming, (C++·Î ¹è¿ì´Â) ÇÁ·Î±×·¡¹ÖÀÇ ¿ø¸®¿Í ½ÇÁ¦ µîÀÌ ÀÖ´Ù. ¼öÇÐ °ü·Ã ¹ø¿ª¼·Î´Â ¡¶±¸Ã¼ ¼öÇС·, ¡¶3D °ÔÀÓ ÇÁ·Î±×·¡¹Ö & ÄÄÇ»ÅÍ ±×·¡ÇÈÀ» À§ÇÑ ¼öÇС· Á¦1ÆÇ¡¤Á¦2ÆÇ µîÀÌ ÀÖ°í, ½ÉÃþÇнÀ °ü·Ã ¹ø¿ª¼·Î´Â ¡¶ÀΰøÁö´É: Çö´ëÀû Á¢±Ù¹æ½Ä¡· Á¦4ÆÇ, ¡¶½ÉÃþÇнÀ¡·, ¡¶½Å°æ¸Á°ú ½ÉÃþ ÇнÀ¡· µîÀÌ ÀÖ´Ù. ¹ø¿ª°ú ÇÁ·Î±×·¡¹Ö ¿Ü¿¡ ¼ÒÇÁÆ®¿þ¾î ¹®¼È¿¡µµ ¸¹Àº °ü½ÉÀÌ ÀÖÀ¸¸ç, ¼ö¸¹Àº ¿ÀǼҽº ÇÁ·ÎÁ§Æ®µéÀÇ Ç¥ÁØ ¹®¼ Çü½ÄÀ¸·Î ¾²ÀÌ´Â DocBookÀÇ ±¹³» »ç¿ëÀÚ ¸ðÀÓÀÎ ´ÚºÏ Çѱ¹(http://docbook.kr)ÀÇ ÀÏ¿øÀÌ´Ù. ÇöÀç ¹ø¿ª¼ Á¤º¸ »çÀÌÆ® occam¡¯s Razor(http://occamsrazr.net)¿Í °ÔÀÓ °³¹ß ¹× °³¹ß¼ °ü·Ã »çÀÌÆ® GpgStudy(http://www.gpgstudy.com)¸¦ ¿î¿µÇÏ°í ÀÖ´Ù.
|
GAME PROGRAMMING GEMS 3 | ·ù±¤ | Á¤º¸¹®È»ç
GAME PROGRAMMING GEMS 4(CD1ÀåÆ÷ÇÔ) | ·ù±¤ | Á¤º¸¹®È»ç
AI GAME PROGRAMMING WISDOM 2 | ·ù±¤ | Á¤º¸¹®È»ç
The Art of Computer Programming 1 | ·ù±¤ | ÇѺû¹Ìµð¾î
The Art of Computer Programming 2 | ·ù±¤ | ÇѺû¹Ìµð¾î
The Art of Computer Programming 3 | ·ù±¤ | ÇѺû¹Ìµð¾î
|
|
|
|
|
|
|
Ãâ°í¾È³» |
|
 |
Ãâ°í¶õ ÀÎÅÍÆÄÅ© ¹°·ùâ°í¿¡¼ µµ¼°¡ Æ÷ÀåµÇ¾î ³ª°¡´Â ½ÃÁ¡À» ¸»Çϸç, ½ÇÁ¦ °í°´´Ô²²¼ ¼ö·ÉÇϽô ½Ã°£Àº »óÇ°Áغñ¿Ï·áÇØ Ãâ°íÇÑ ³¯Â¥ + Åùè»ç ¹è¼ÛÀÏÀÔ´Ï´Ù. |
 |
ÀÎÅÍÆÄÅ© µµ¼´Â ¸ðµç »óÇ°ÀÇ Àç°í°¡ ÃæÁ·ÇÒ ½Ã¿¡ ÀÏ°ý Ãâ°í¸¦ ÇÕ´Ï´Ù. |
 |
ÀϺΠÀç°í¿¡ ´ëÇÑ Ãâ°í°¡ ÇÊ¿äÇÒ ½Ã¿¡´Â ´ã´çÀÚ¿¡°Ô Á÷Á¢ ¿¬¶ôÇϽðųª, °í°´¼¾ÅÍ(°í°´¼¾ÅÍ(1577-2555)·Î ¿¬¶ôÁֽñ⠹ٶø´Ï´Ù. |
|
¹è¼Ûºñ ¾È³» |
|
 |
ÀÎÅÍÆÄÅ© µµ¼ ´ë·®±¸¸Å´Â ¹è¼Û·á°¡ ¹«·áÀÔ´Ï´Ù. |
 |
´Ü, 1°³ÀÇ »óÇ°À» ´Ù¼öÀÇ ¹è¼ÛÁö·Î ÀÏ°ý ¹ß¼Û½Ã¿¡´Â 1°³ÀÇ ¹è¼ÛÁö´ç 2,000¿øÀÇ ¹è¼Ûºñ°¡ ºÎ°úµË´Ï´Ù. |
¾Ë¾ÆµÎ¼¼¿ä! |
|
 |
°í°´´Ô²²¼ ÁÖ¹®ÇϽŠµµ¼¶óµµ µµ¸Å»ó ¹× ÃâÆÇ»ç »çÁ¤¿¡ µû¶ó Ç°Àý/ÀýÆÇ µîÀÇ »çÀ¯·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù. |
 |
Åùè»ç ¹è¼ÛÀÏÀÎ ¼¿ï ¹× ¼öµµ±ÇÀº 1~2ÀÏ, Áö¹æÀº 2~3ÀÏ, µµ¼, »ê°£, ±ººÎ´ë´Â 3ÀÏ ÀÌ»óÀÇ ½Ã°£ÀÌ ¼Ò¿äµË´Ï´Ù.
(´Ü, Åä/ÀÏ¿äÀÏ Á¦¿Ü) |
|
|
|
|
ÀÎÅÍÆÄÅ©µµ¼´Â °í°´´ÔÀÇ ´Ü¼ø º¯½É¿¡ ÀÇÇÑ ±³È¯°ú ¹ÝÇ°¿¡ µå´Â ºñ¿ëÀº °í°´´ÔÀÌ ÁöºÒÄÉ µË´Ï´Ù.
´Ü, »óÇ°À̳ª ¼ºñ½º ÀÚüÀÇ ÇÏÀÚ·Î ÀÎÇÑ ±³È¯ ¹× ¹ÝÇ°Àº ¹«·á·Î ¹ÝÇ° µË´Ï´Ù.
±³È¯/¹ÝÇ°/º¸ÁõÁ¶°Ç ¹× Ç°Áúº¸Áõ ±âÁØÀº ¼ÒºñÀڱ⺻¹ý¿¡ µû¸¥ ¼ÒºñÀÚ ºÐÀï ÇØ°á ±âÁØ¿¡ µû¶ó ÇÇÇظ¦ º¸»ó ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.
Á¤È®ÇÑ È¯ºÒ ¹æ¹ý ¹× ȯºÒÀÌ Áö¿¬µÉ °æ¿ì 1:1¹®ÀÇ °Ô½ÃÆÇ ¶Ç´Â °í°´¼¾ÅÍ(1577-2555)·Î ¿¬¶ô Áֽñ⠹ٶø´Ï´Ù.
¼ÒºñÀÚ ÇÇÇغ¸»óÀÇ ºÐÀïó¸® µî¿¡ °üÇÑ »çÇ×Àº ¼ÒºñÀÚºÐÀïÇØ°á±âÁØ(°øÁ¤°Å·¡À§¿øȸ °í½Ã)¿¡ µû¶ó ºñÇØ º¸»ó ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.
|
±³È¯ ¹× ¹ÝÇ°ÀÌ °¡´ÉÇÑ °æ¿ì |
|
 |
»óÇ°À» °ø±Þ ¹ÞÀ¸½Å ³¯·ÎºÎÅÍ 7ÀÏÀ̳» °¡´ÉÇÕ´Ï´Ù. |
 |
°ø±Þ¹ÞÀ¸½Å »óÇ°ÀÇ ³»¿ëÀÌ Ç¥½Ã, ±¤°í ³»¿ë°ú ´Ù¸£°Å³ª ´Ù¸£°Ô ÀÌÇàµÈ °æ¿ì¿¡´Â °ø±Þ¹ÞÀº ³¯·ÎºÎÅÍ 3°³¿ùÀ̳», ±×»ç½ÇÀ» ¾Ë°Ô µÈ ³¯ ¶Ç´Â ¾Ë ¼ö ÀÖ¾ú´ø ³¯·ÎºÎÅÍ 30ÀÏÀ̳» °¡´ÉÇÕ´Ï´Ù. |
 |
»óÇ°¿¡ ¾Æ¹«·± ÇÏÀÚ°¡ ¾ø´Â °æ¿ì ¼ÒºñÀÚÀÇ °í°´º¯½É¿¡ ÀÇÇÑ ±³È¯Àº »óÇ°ÀÇ Æ÷Àå»óÅ µîÀÌ ÀüÇô ¼Õ»óµÇÁö ¾ÊÀº °æ¿ì¿¡ ÇÑÇÏ¿© °¡´ÉÇÕ´Ï´Ù.
|
|
|
|
±³È¯ ¹× ¹ÝÇ°ÀÌ ºÒ°¡´ÉÇÑ °æ¿ì |
|
|
 |
°í°´´ÔÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óÇ° µîÀÌ ¸ê½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì´Â ºÒ°¡´ÉÇÕ´Ï´Ù. (´Ü, »óÇ°ÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§ÇÏ¿© Æ÷Àå µîÀ» ÈѼÕÇÑ °æ¿ì´Â Á¦¿Ü) |
 |
½Ã°£ÀÌ Áö³²¿¡ µû¶ó ÀçÆǸŰ¡ °ï¶õÇÒ Á¤µµ·Î ¹°Ç°ÀÇ °¡Ä¡°¡ ¶³¾îÁø °æ¿ì´Â ºÒ°¡´ÉÇÕ´Ï´Ù. |
 |
Æ÷Àå °³ºÀµÇ¾î »óÇ° °¡Ä¡°¡ ÈÑ¼ÕµÈ °æ¿ì´Â ºÒ°¡´ÉÇÕ´Ï´Ù. |
|
|
´Ù¹è¼ÛÁöÀÇ °æ¿ì ¹ÝÇ° ȯºÒ |
|
|
 |
´Ù¹è¼ÛÁöÀÇ °æ¿ì ´Ù¸¥ Áö¿ªÀÇ ¹ÝÇ°À» µ¿½Ã¿¡ ÁøÇàÇÒ ¼ö ¾ø½À´Ï´Ù. |
 |
1°³ Áö¿ªÀÇ ¹ÝÇ°ÀÌ ¿Ï·áµÈ ÈÄ ´Ù¸¥ Áö¿ª ¹ÝÇ°À» ÁøÇàÇÒ ¼ö ÀÖÀ¸¹Ç·Î, ÀÌÁ¡ ¾çÇØÇØ Áֽñ⠹ٶø´Ï´Ù. |
|
|
|
|
|
|