ããã«ã¡ã¯ãHabrïŒ Bjarne Straustrupã«ããèšäºã ããã°ã©ãã³ã°ã®ããã®ã€ã³ã¹ãã©ã¯ã¿ãŒã¬ã€ã ãã®ç¿»èš³ãã玹ä»ããŸãïŒæçµèšªåæ¥ïŒ2017幎12æ20æ¥ïŒã
翻蚳è
ãã
Bjarn Straustrupã¯ãC ++ããã°ã©ãã³ã°èšèªã®éçºè
ãšããŠç¥ãããŠããŸãã 圌ã®èè
ã®æ¬ã¯ãå€ãã®ç±ç·ããéçºè
ã®ããŒãã«ã«èŒã£ãŠããŸãã
ç¹ã«æ³šç®ã«å€ããã®ã¯ãããã°ã©ãã³ã°ã®åºæ¬ã«é¢ãããã¥ãŒããªã¢ã«ãããã°ã©ãã³ã°ïŒC ++ã䜿çšããååãšå®è·µãã§ãã Bjarnã¯ããããµã¹å€§åŠã®èŸ²æ¥èŸ²æ¥å·¥åŠéšã®åŠçã®ããã«ãããæžããããã§åœŒã¯åŠçã®ããã®ã³ãŒã¹ãé·ãéæããŸããã ãã¥ãŒããªã¢ã«èªäœã«å ããŠãwww.stroustrup.comã§è¬åž«çšã¬ã€ããèŠã€ããããšãã§ããŸãã ããã°ã©ãã³ã°ã®åºç€ã®ã³ãŒã¹ãæããéã«åœŒãæããçµéšã¯ãC ++ã®ã³ãŒã¹ã ãã§ãªã圹ã«ç«ã€å ŽåããããŸãã ããã¥ã¢ã«ã§ã¯ãæåž«ã®å
žåçãªè³ªåã«å¯ŸããåçãèŠã€ããããšãã§ããŸãïŒè³æãæåºããã«ã¯ïŒ ã¹ãã«ã°ã«ãŒãã®å±€å¥åã®å¯ŸåŠæ¹æ³ ãããã¯ãæ·±ãæãäžããã«ã¯ã©ã®ãããå¿
èŠã§ããïŒ
ãããã°ã©ãã³ã°ïŒC ++ã䜿çšããååãšå®è·µããšããæ¬ã®ãã·ã¢èªçã®è¬åž«çšã¬ã€ããèŠã€ãããªãã£ãããã翻蚳ããŠåºçããããšã«ããŸããã
ãŸãšã
ãã®ããã¹ãã¯ã芳å¯ãšçµè«ã®åãªãã³ã¬ã¯ã·ã§ã³ã§ãã ãããã°ã©ãã³ã°ïŒC ++ã䜿çšããååãšå®è·µããšããæ¬ã§ã³ãŒã¹ãæããŠããå Žåã«åœ¹ç«ã¡ãŸãã
ä»®å®
ããªãã¯ææãè¬åž«ãã€ã³ã¹ãã©ã¯ã¿ãŒããã£ãŒãã³ã°ã¢ã·ã¹ã¿ã³ãã§ãããšæããŸãã ãã¶ãããªãã®ç«å Žã¯ç°ãªã£ãŠåŒã°ããŸãã äž»ãªããšã¯ããããã°ã©ãã³ã°ïŒC ++ã䜿çšããååãšå®è·µããšããæ¬ã§ã³ãŒã¹ãæããããèšç»ãããã§ãã æ¬ã®åºæãšç¬¬0ç« ãèªè
ãžã®å¯Ÿå¿ããïŒå°ãªããšãïŒèªãã ããšãåæãšããŠããŸãã ããã§ãªãå Žåã¯ããã®è³æãèªãã§ãã ããã
ããªãã®çåŸã¯ãŸã ããã°ã©ãã³ã°ãè¡ã£ãŠããªãããããã°ã©ãã³ã°ã«ã€ããŠé ãçè§£ãæã£ãŠããããC ++ãšã¯ç°ãªãèšèªã䜿çšããŠãããšæããŸãã ç§ã¯äž»ã«æåã®2ã€ã®ã°ã«ãŒãã®åé¡ã解決ããŸãã
ãã®ç« ã«é¢ããäžè¬æ
å ±ã®åŸãåã
ã®ã»ã¯ã·ã§ã³ã«é¢ããã³ã¡ã³ããèŠã€ããããšãã§ããŸãã ãã®ç« ã«åºã¥ããŠè¬çŸ©ãèšç»ãããšãã¯ããããã®ã¡ã¢ã䜿çšããŠãã ããã ç§ã®ãã¬ãŒã³ããŒã·ã§ã³ã®ã¹ã©ã€ãã¯ãµã€ãã§å©çšã§ããŸãã ç§ã®è³æã䜿çšããå Žåã¯ãã©ã®ããã«æ¹åã§ãããææ¡ããŠãã ããã
ãã£ãŒãããã¯ãšæå°çµéšã®èª¬æãæè¿ããŸãã
泚ïŒãã®ããã¹ãã¯åãªãã¡ã¢ã§ããããã以äžã®ãã®ã§ã¯ãããŸããã ãã®ããã¹ãã®æè¡çãªç·šéã«ã¯èª°ãé¢äžããŸããã§ããã ææã®å®æãæåŸ
ããªãã§ãã ããã ããã©ãããããããã®èšé²ã«ç€ºãããŠããããã«ããããªãçµéšã«åºã¥ããŠããã«éçºãããŸãã ãããã®ã¡ã¢ãæŽæ°ããäºå®ã§ãïŒãµããŒããµã€ãã§å
¥æã§ããŸãïŒã
ãæ³šæ PerevïŒæçµæŽæ°æ¥ã¯2011幎10æ7æ¥ã§ããã
ã¯ããã«
人ã
ã«ã¯ãè¯ãããã°ã©ã ãæžãããšãåŠã¶ããšã劚ãã信念ããããŸãïŒ
- ããã¯æãé£ããæè¡çã¹ãã«ã®1ã€ã§ãã
- ããã¯ãŸããªæèœãå¿
èŠãšããã¹ãã«ã§ãã
- ããã°ã©ã ã¯ãäž»ã«å€éã«å®å
šã«éé¢ããã10代ã®ãœã·ãªãã¹ã«ãã£ãŠäœæãããŸãã
- ããã°ã©ãã³ã°ãšã¯ãæŽåãšæ®èè¡çºã«é¢ãããããªã²ãŒã ã®äœæã§ãã
- ãã®ã¹ãã«ã«ã¯æ°åŠã®é«åºŠãªç¥èãå¿
èŠã§ãã
- ããã¯ãæ¥åžžçãªæèãšã¯ãŸã£ããç°ãªã掻åã§ãã
- ããã¯äººã
ãå©ããŸããã
ããã°ã©ãã³ã°ã®æåž«ãšããŠã®ããªãã®äž»ãªä»äºã¯ããããã®ç¥è©±ã®åœ±é¿ãæå°éã«ããããšã§ãã
1ã€ã®æåãããã©ã¯ãã£ã¹ããããŸãã 3ã€ãŸãã¯4ã€ã®è¬çŸ©ããšã«ãããã°ã©ãã³ã°ã«ãã£ãŠè§£æ±ºãããè峿·±ãå¿çšåé¡ã®èª¬æã«æ°åãè²»ãããŸãã 第1ç« ã§ã¯ãäœãããããããšæãããç¥ãããšãã§ããŸãã çåŸã¯ããã®é©çšç¯å²ã瀺ããŠããã°ããã©ã€çè«ãããããç¥èŠããŸãã ãããã®ã³ã¡ã³ãã¯ç°¡æœã§ãããã¢ã©ã«åã«ã¯ãªããªãããšãéèŠã§ãã ããããªãèªèº«ãããã€ãã®ã¿ã¹ã¯ãé
åçã§ãããšæããªããªãããããåŠçã«çŽåŸãããããšããªãã§ãã ããã 圌ãã¯æåã®ç¬éã«ããªãã®åœãã®ç±æãè§£ãæŸã¡ãŸãã ã¹ããŒãªãŒã®äžã§ãç§ãã¡ã¯å人çãªçµéšãåºåŒµã§èŠããã®ããã¥ãŒã¹ã§èãããã®ãéèªã§èªãã ãã®ã«é Œã£ãŠããŸãã å¿
ãäŸãæããŠãã ããïŒåçãiPodãæºåž¯é»è©±ãæèšãªã©ã®å®éã®ããã€ã¹ã§ãã
åŠçã®èå³ã¯ç°ãªãå Žåãããããšã«æ³šæããŠãã ããã äžéšã®åŠçã¯ããããªã²ãŒã ã®ææ°ã®éçºã«èå³ããããããããŸããã ãã ãããã®ãããªäºå®ã¯ãããã°ã©ãã³ã°ãã³ã³ãã¥ãŒã¿ãŒãµã€ãšã³ã¹ãããã³æ
å ±æè¡ããŸã£ããåŠç¿ããå¿
èŠããããã©ããããŸã 決å®ããŠããªããããæ·±å»ãªåŠçã«ãšã£ãŠããã°ã©ãã³ã°ã®åŠå®çãªèããçã¿åºãå¯èœæ§ããããŸãã 2çªç®ã®ã°ã«ãŒãã¯ãããŸããŸãªå²åã§ãçç©åŠãšçç©å»åŠã®äŸã«èå³ããããããããŸããã ïŒæ³šæperevïŒæç§æžã¯ãããµã¹èŸ²æ¥æåå·¥åŠå€§åŠã§éçºããããã®ã§ãããããããå°åç¹æã®ãã®ã§ãïŒããŸããŸãªã¿ã¹ã¯ã«ã€ããŠè©±ãããšã¯éåžžã«éèŠã§ããããããªããšãåŠçã¯ããã°ã©ãã³ã°ãåãé¢ããŠæ³ååè±ããªæ³ååãç¶æããŸãã å¯èœãªéããã³ãŒããå®äžçã®äŸã«æ¥ç¶ããŠã¿ãŠãã ããããGoogleã¯STLã®ãããªãã¯ããã¯ã䜿çšããŸãã-STLã®ããŒãã®è¯ãäŸãiPodã°ã©ãã£ãã¯ã€ã³ã¿ãŒãã§ã€ã¹ã¯GUIã®ç« ã«ãé£è¡æ©ã®äŸã¯éã®æäœã®ç« ã«ãããã°ã©ã ã®æ£ç¢ºãã
å°ããªããã°ã©ã ãæžããŠå®è¡ããããšã¯ãèªæžã®ç« ãã®äžéšã§ãããšããèããäŒããå¿
èŠããããŸãã å€ãã®åå¿è
ã«ãšã£ãŠãæåã®ç« ã®è³æã¯åçŽãããŠçå£ã«èããããšãã§ãããäžéšã®æçã¯æéãæµªè²»ããã«ã¯æœè±¡çãããããšãããããŸããã åŠçã¯ããã°ã©ãã³ã°ã®çµéšãã»ãšãã©ãªãããããã¹ãŠãç¥ã£ãŠãããšä¿¡ããŠããŸãã å°ãªããšããæåã®1ãæã§äžè¬çã«äŒããããããšãã¹ãŠã ãã®ãããæåã®è¬çŸ©ãã¹ãããããããšãããããŸãã ä»ã®äººã¯ãŸã ããã°ã©ãã³ã°ã«ééããŠããŸããããæ¬ãéããŠãããåŠã¶ããšãã§ãããšä¿¡ããŠããŸãã åŠæ ¡ã§ã¯ã圌ãèªèº«ãéèŠãªãã®ãšéèŠã§ãªããã®ãåºå¥ã§ãããšããå¹»æ³ãæã£ãŠããŸããã 匷ãçåŸã®äžã«ã¯ãè²»ããå¿
èŠã®ããæéãšåŽåãéå°è©äŸ¡ããŠãã人ãããŸãã åŠæ ¡ã®ææã¯ãå€ãã®åªåãªãã«åœŒãã«äžããããŸããã çŸå®ã«ã¯ãããã§ã¯ãããŸããã 圌ããããã«æ°ä»ãã®ãæ©ããã°æ©ãã»ã©è¯ãã
ã³ãŒã¹ã®åŠç¿ãæåãããã«ã¯ãçåŸã¯ãŸã課é¡ã«ãæéãè²»ãããå¿
èŠããããŸãã ããã¯ã以åã®ããã°ã©ãã³ã°çµéšãåŠå¹ŽããŸãã¯ç¥çèœåïŒç§ãã¡ãç¥ãéãïŒãããéèŠã§ãã çŽ æã«ã€ããŠã®æäœéã®ç¥èãåŸãã«ã¯ãã¿ã¹ã¯ãå®äºããã ãã§ååã§ãã ãã ããã³ãŒã¹ãå®å
šã«ãã¹ã¿ãŒããã«ã¯ãè¬çŸ©ã«åå ããç« ã®æåŸã«æŒç¿ãå®è¡ããå¿
èŠããããŸãã ïŒæ³šãæ¬æžã®åç« ã®çµããã«ãã¿ã¹ã¯ãšæŒç¿ããããŸãïŒæŒç¿ãæ¯æŽããããã«ããå®éšå®€ããšæåž«ã®ã¢ã·ã¹ã¿ã³ãã«æéãå²ãåœãŠãŸãã äžã€ã®è¯ãç¿æ
£ã¯ãçåŸãå°ããªã°ã«ãŒãã«åããããšã§ãã ãã®å ŽåãããŸããŸãªããã°ã©ãã³ã°çµéšãæã€äººã
ã®ã°ã«ãŒããäœãããšãæãŸããã åç« ã§ãåçåŸã次ã®ããšãè¡ããããã«ããããåªåãããŸãã
- ãã¿ã¹ã¯ããå®äºããŸããã ã€ã³ã¹ãã©ã¯ã¿ãŒãã¢ã·ã¹ã¿ã³ãããŸãã¯çµéšè±å¯ãªåŠçãããã§åœ¹ç«ã¡ãŸãã圌ãã¯ãçºçãããå°ããªå®çšçãªåé¡ããæ¯æŽããããšãã§ããŸãã
- ãããšããããèªãã§ãå°ãªããšãããã€ãã®è³ªåã«çããŸããã ããã«ã¯ãããã¹ãã®äžéšã®ãã©ã°ã¡ã³ããç¹°ãè¿ãå¿
èŠããããŸãã å€åãªåŠçã¯èªåã§ãããè¡ããŸãã ãããŠãæ¬åœã«ãããå¿
èŠãšãã人ã¯ã蹎ããå¿
èŠããããŸãã
- 圌ã¯ããã€ãã®éåãè¡ããŸããã ãããã¯è€éãïŒæåã¯åçŽïŒã«ãã£ãŠå€§ãŸãã«åé¡ãããåŸç¶ã®ãã®ã¯ãã°ãã°ä»¥åã®ãã®ã«åºã¥ããŠããŸãã
åŠæ ¡ã®ç¥èããªã³ã©ã€ã³ãã©ãŒã©ã ããã®æ
å ±ã䞻匵ããŠãä»ã®çåŸã«èªåãæ£ããããšãçŽåŸããããã¹ãŠãç¥ã£ãŠãããªã¿ã¯ã«æ³šæããŠãã ããã ãã¯ãã«ãšæååã®ä»£ããã«é
åãšãã€ã³ã¿ã䜿çšããããšã¯ãæããã¡ãŒãžãäžãããæããã¢ã€ãã¢ãã§ãã ãã®ç ç²è
ã¯ããããã¡ãªãŒããŒãããŒãåºå®ãããã¯ã§ã®ã¡ã¢ãªã®å²ãåœãŠãstrcpyïŒïŒã®äœ¿çšãªã©ã®åé¡ã解決ããªããã°ãªããªãç¡å®ã®æ°åè
ã§ãã 圌ãããã®æºåããããã£ãšåã«
ãããã倧åŠã®ãšãªãŒãåŠçãã®ããã«æžããšä¿¡ããããŠããŸãã ããã¯ã¿ã æ°å
¥çã«ãšã£ãŠéåžžã«ãäžèŸã®ã¬ãã¥ãŒã§ãããçŸå®ã¯ããã§ã¯ãããŸããã ç§ãã¡ã«ã¯æãå³ããéžæã¯ãããŸããããŸããåŠçã¯ç§ãã¡ãæãã»ã©ã³ãŒã¹ãåŠã¶ææ¬²ããããŸããã æ£çŽãªãšãããæåã®æ°çŸäººã®åŠçã¯ããœãããŠã§ã¢éçºã®å°æ¥ãèŠãŠããªãã£ã黿°ããã³ã³ã³ãã¥ãŒã¿ãŒã®ãšã³ãžãã¢ã§ããïŒã³ãŒã¹èªäœã¯å¿
é ã§ããïŒã ç§ãã¡ã®çµæããããã®å°éå®¶ã®ã¬ãã«ã«éãããšããç§ãã¡ã¯ãã£ãšåŸã«ã³ã³ãã¥ãŒã¿ãŒç§åŠãå°éãšããæ°å
¥çã«æãå§ããŸããã
å€§èŠæš¡ãªã°ã«ãŒãã§æããå Žåãå
šå¡ã察åŠã§ããããã§ã¯ãããŸããã ãã®å Žåãããªãã¯é£ããæ±ºæãäžãå¿
èŠããããŸãïŒåŒ±ãçåŸãå©ããããã«é床ãèœãšãããããŒã¹ãç¶æããŠçåŸã倱ãã éã®ãã¹ãŠã®ç¹ç¶ã§ãããªãã¯é
ããªããå©ããããšããŸãã ãã«ãã å©çšå¯èœãªãã¹ãŠã®æ¹æ³ã§ã ããããæ±ºããŠæžéããªãã§ãã ããã ããã¯è³¢ããèšç·Žãããå€åãªåŠçã«ãšã£ãŠäžèª å®ã§ã-圌ãã¯å°é£ãªã¿ã¹ã¯ã®æ¬ åŠããéå±ããããªãã¯ãããã倱ããŸãã ãããã«ããããªãã¯èª°ãã倱ãã®ã§ããããããªãã®å°æ¥ã®ã¹ã¿ãŒã§ã¯ãªããè¯ãéçºè
ãç§åŠè
ã«æ±ºããŠãªããªã人ã«ããŸãããã ã³ã³ãã¥ãŒã¿ãµã€ãšã³ã¹ãšããã°ã©ã éçºã¯ãã§ã«ãããè峿·±ãç§åŠåéã®åŠçãããå£ã£ãŠããŸãã ãã®åé¡ãæªåãããªãã§ãã ããã
åŠçã¯ç§ãã¡ã®æåŸ
ã«å¿ããããšãã§ãããšç¢ºä¿¡ããŠãããç§ãã¡ã®ã³ãŒã¹ã¯ããã確èªããŠããããã§ãã 調æ»ã«ãããšãåŠçã¯ãæ°å
¥çã®äžè¬çãªèŠåŸããã25ïŒ
é·ãæéãããããå¿çã25ïŒ
åäžããŠããŸãã å¶ç¶ã«ããããã¯å·¥åŠç³»å€§åŠã§æé«ã®æºè¶³åºŠã§ããïŒã ãã®ã³ãŒã¹ã¯ãã¢ã¡ãªã«ã®åŠæ ¡ã®å
žåçãªåæ¥çåãã®æåã®ã³ãŒã¹ã®äºæ¬¡çç©åŠãç©çåŠããŸãã¯æ°åŠãšåããããè€éã§ã¯ãããŸããã éåžžãçç©åŠãªã©ã®ç¢ºç«ãããåŠååéã§ã¯ãåŠæ ¡ã®æºåã¯ã³ã³ãã¥ãŒã¿ãŒãµã€ãšã³ã¹ãããåªããŠããŸãã
ãBjarn Straustrupã«ãã£ãŠæãããããããã³ãŒã¹ãæåããããšã瀺åãã人ãããŸãã ãããéåžžã«ãäžèŸã§ãããçå®ã§ã¯ãããŸããã æ°å
¥çã¯èª°ãã®è©å€ã«æ¬æãæãããšã¯çãããããŸããããŸããå€ãã®å Žåãæåã¯ïŒæ®å¿µãªããïŒæ·±å»ãªæè¡ç詳现ãå匷ãããããè©äŸ¡ã«ãã£ãšèå³ããããŸãã ãããã«ããŠããã³ãŒã¹ã®æåŸã®4åŠæã¯ããŒãããŒã¿ãŒã»ã³ããŠã©ã«ã¿ãŒãããã£ããããŒãŠã©ãŒãã«ãã£ãŠæããããŸããã 圌ãã¯éåžžã«çµéšè±å¯ãªäžçŽæåž«ã§ãã ç§ã¯ãããŸã«ãã²ã¹ãã¬ã¯ãã£ãŒãã®ã¿ãæ±ããŸãã
åœåããã®ã³ãŒã¹ã¯ãé±ã«2åã®è¬çŸ©ã«å ããŠããã£ãŒãã³ã°ã¢ã·ã¹ã¿ã³ãã®æå°ã®äžãå®éšå®€ã®ã¯ã©ã¹ã§è¡ãããŸããã ããã¯ååã§ã¯ãªããã³ãŒããŒãã«ããããå¿
èŠããããŸããã ãã®åŸãã³ãŒã¹ã¯é±ã«3åã®è¬çŸ©ãšç ç©¶å®€ã«æ¡å€§ãããæ¹åãããŸããã ããããŠåããŠãäŸã®åæã«æéãå²ããæ¬ããããã«äŸã远å ã§ããŸããã ããããã匷åãªåŠçã¯ãããå¿
èŠãšããŸããã§ãããïŒãã®æ
å ±ã¯æ¬ã®äžã«ãããŸãïŒãã»ãšãã©ã®åŠçãå©ããŸããã æ¬ã«ã¯ãŸã è¬çŸ©ã§æç€ºãããå€ãã®æ
å ±ããããŸãã åã¹ã©ã€ãã«2åãäžããŸãã åãé床ã®å Žåã50åãŸãã¯60åéã®è¬çŸ©ã«åãããã«ããã€ãã®ã¹ã©ã€ããã¹ãããããå¿
èŠãããããšãããããŸãã ç§ãã¡ãããããŸãã
ä»ãç§ãã¡ã¯å®éšãããããšã«æ±ºããé±ã«2åã®è¬çŸ©ãè¡ãã2åŠæã«ããã£ãŠã³ãŒã¹ãæ¡å€§ããŸããã ã³ãŒã¹ã®éå§ãããè峿·±ããåé¡ã®åæã®éå§ãŸã§ã«ããªãã®æéãçµéãããããæåã¯æåŸ
ããŠããŸããã ç§ãééã£ãŠããããšãæã¿ãŸãããã
以äžã«åç« ã®ã¬ãã¥ãŒããããŸãã ãããã¯æåž«ã«ãšã£ãŠæçšãããããŸããããç§ã¯ããããæ¬ã«å
¥ããªãããšã«æ±ºããŸããã ãã¹ãã®è³ªåã¯ããã¹ãŠã®åçãå«ãŸããŠããïŒãããŠééã£ãçç±ã§å¥œããªïŒã¬ãã¥ãŒãããåŠçã«ãšã£ãŠããæçšã§ããããšã倿ããŸããã
15é±éã®åŠæã«åžžã«ç¬¬1ç« ãã第22ç« ã«é²ãããšãã§ããŸãã ããã«ãããæåŸã®ïŒçŽïŒ3é±éã§ïŒæçµè¬çŸ©ãšåæã«ïŒã»ãã·ã§ã³ã«æ°æ¥ãå¿
èŠãªã°ã«ãŒããããžã§ã¯ãã®æéãæ®ããŸãã 第22ç« ãã第27ç« ã¯ãå¿
ããããã®é åºã§é²ãå¿
èŠã¯ãããŸããã å¿
èŠã«å¿ããŠèªãããšãã§ããŸãã ããéå¿çãªãããžã§ã¯ãããµããŒãããã®ã«éåžžã«åœ¹ç«ã¡ãŸãã
ããã¯ãã³ãŒã¹çšã«1264ããŒãžã®æ¬ã䜿çšããŠããããšã«æ³šæããŠãã ãããããã¯812ããŒãžã§èª¬æãããŠããŸãã ïŒããã1329ããŒãžã®ç¿»èš³ãš827ã®äž»èŠç« ãžã®ç¿»èš³ã翻蚳ããŸãïŒã ä»ã®ãã¹ãŠã¯è¿œå ã®ã¡ã¿ãªã«ã§ãïŒèå³ã®ããåŠçã®ããã®ç¹å¥ãªãããã¯ãåèè³æãªã©
å®è·µçãªæ³šæïŒäžéšã®åŠçã¯ïŒããŸãã«ãïŒãããã®æ
å ±ã«äŸåããŠãããã¹ã©ã€ãäžã«ãªãæ¬ã®è³æãèŠéãå¯èœæ§ããããããã¹ã©ã€ãã«ã¯æ
å ±ãå°ãããµããŠããŸãã ããã«ãæºåã«ååãªæéããªãã£ãã€ã³ã¹ãã©ã¯ã¿ãŒãæ¯æŽããŸãïŒéåžžã«äžè¬çãªçŸè±¡ïŒã ã³ãŒãã¯20ptãã©ã³ãã§æžãããŠããŸãã ããã¯ã200人ã®èŽè¡ã®ã»ãšãã©ã«ãšã£ãŠååã§ãã ãŸããªäŸå€ãšããŠã18ptãã©ã³ãã䜿çšããŸãã ã¹ã©ã€ãã®è£
食ãããŸã奜ãã§ã¯ãªãã®ã§ãé£ãããã©ã³ãžã·ã§ã³ãé¢çœãã¢ãã¡ãŒã·ã§ã³ã¯ãããŸããã æãèæ¯ãæ°ã«ãªãå Žåã¯ããã¶ã€ã³ãçœé»ã«å€æŽããŠãã ããã TAMUã®ç§ãã¡ã®ããŒã ã¯ããŸã ããã«ã€ããŠã³ã³ã»ã³ãµã¹ãåŸãŠããŸããã ã€ã©ã¹ãçšã®åçããã£ãšããå Žåããå質ãè¯ãå Žåã¯ãããããéã£ãŠãã ããã çåŸã¯ãã¬ãã¹ã³ã®ãããã¯ã«é¢é£ããçŸããåçã奜ãã§ãã
åç« ã®åã«ããšã©ãŒæ
å ±ïŒwww.stroustrup.com/Programming/errata.htmlïŒããèªã¿ãã ããã ã¿ã€ããã¹ã¯ãç¹ã«ã³ãŒãã¹ããããã§ãéåžžã«åŠç¿ãæ··ä¹±ãããå¯èœæ§ããããŸãã
ã¹ã©ã€ãã远å ããŠãæŠè¡çãªåé¡ã解決ã§ããŸãã åãããšãããŸãã TAMUã¹ã©ã€ãããã¹ãŠåé€ããã®ã§ããããè¡ãå¿
èŠã¯ãããŸããã æåã®ã¹ã©ã€ãã«èªç±ã«ååã远å ããŠãã ããããã ãã倧å¹
ãªå€æŽãè¡ã£ãŠããªãå Žåã¯ãç§ã®ååãšãµããŒããµã€ããžã®ãªã³ã¯ãæ®ããŠãã ããã 倿Žãç°¡çŽ åããããã«ãPowerPointãå
¬éããŠããŸãã
è¬èŸ
ã¹ã©ã€ããšãã®ã¬ã€ãã«é¢ãã建èšçãªã³ã¡ã³ãããã ãã£ãLawrenceâ Peteâ PetersenãWalter DohertyãRonnie Wardã«æè¬ããŸãã
第0ç« ïŒèªè
ãžã®å¯Ÿå¿
æããã«ã第0ç« ã«ã¯å¥åŠãªçªå·ãä»ããããŠããŸãã ã0ã¯å¥æ°ãã¯ã0ã¯å¥æ°ããšã0ã¯å¥æ°ãã®äž¡æ¹ãæå³ããŸãã ããã¯æå³çãªäžæ¡çã§ãã äœäººãã®çåŸã ãããããèªã¿ãŸãããããŠãã»ãšãã©ã¯ãããèŠéããŸãã 以åã«ããã°ã©ãã³ã°ããããšããªã人ã¯ã»ãšãã©çè§£ã§ããŸããã ãã®äž»ãªç®æšã¯ãããªããææãè¬åž«ã婿ãªã©ã«ãç§ã®ç®æšã𿹿³ã®äžè¬çãªã¢ã€ãã¢ãæäŸããããšã§ãã
ã§ã¯ããªãã第0ç« ããªã®ã§ããããïŒ C ++ã®çªå·ä»ãã¯-ã«ãŒã¬ããã®ç®çãã®ããã«-1ã§ã¯ãªã0ããå§ãŸãã®ã§ã人ã
ã«æããããäžããããã«ïŒãããã§äœãç°åžžãªããšãèµ·ãã£ãŠããŸããã ãã®ç« ãè¬çŸ©ã宿é¡ãå«ãä»ã®äžé£ã®ç« ãšã¯ç°ãªãããšã瀺ãããã ããçšåºŠããã¡ã¿æ
å ±ããäŒããŸãã
åŠçã第0ç« ãèªãããšã¯ãå§ãããŸããããå€ãã®äººãããããŸãã 第0ç« ã®è³æã«ã€ããŠã®è¬çŸ©ã¯ææ¡ããŠããŸãããåæã«ããã¹ãŠã®è¬çŸ©ããã³è°è«ã§å¿
èŠã«å¿ããŠäœ¿çšããå¿
èŠãããã¢ã€ãã¢ãå«ãŸããŠããŸãã 圌女ã¯è³ªåã«çããŸããããªãç§ãã¡ã¯ãããããŠããã®ã§ããïŒã ãæ¬åœã«ãããè¡ãå¿
èŠãããã®ã§ããïŒã åŠçãã³ãŒã¹äžã«å°ãããã£ãšåã«ã ã第0ç« ãèªãæºåãã§ããŸããããšçããã ãã§ååãªå ŽåããããŸãã
ããã§ãã第0ç« ãèªãã§çå£ã«åãæ¢ããŠãã ããã åææ®µéã§ã¯ãææã远å ããŠã³ãŒã¹ãæ¹åããããšããçµ¶ãéãªã詊ã¿ã¯ã壿»
çãªçµæã«ã€ãªããå¯èœæ§ããããŸãã 第12ç« ãŸã§ãåŠçã¯éè² è·ç¶æ
ã«ãããŸãã 圌ãã¯åžžã«åæ©ä»ããããŠããå Žåã«ã®ã¿åé²ããŸãã åç« ã®åŸã圌ãã¯ãããçè§£ããŠããªããŠãã以åããå°ãã ãå€ãã®ããšãããããšãã§ããŸãã ãã®æ®µéã§åŠçã«ãã¹ãŠãå®å
šã«çè§£ãããããšã§ã³ãŒã¹ãæ¡å€§ããããšããªãã§ãã ããã ããªãã®ä»äºã¯ã圌ããç¬ç«ããŠæ°ããç¥èã远å ããåæã«ææçŸ©ã«ããããé©çšã§ãããããªã¹ãã«ã®ããŒã¹ãæºåããããšã§ãã
ããªããã¢ã·ã¹ã¿ã³ããã£ãŒãã£ãŒã§ããå ŽåãçåŸã«äœãã説æããåã«ãæ¬å
šäœãèªãã§ãã ããã çŽ æã¯ç¶èŠªã®C ++ ãšã¯ç°ãªããŸãã ãŸããè¬çŸ©ãéãããå°ãªããšãã¹ã©ã€ãã®ããã¹ããèªãã§ãã ããã ã©ã®ãããªäºå®ãããã®ãââããããªãå ŽåãçåŸãæ¯æŽããããšã¯å°é£ã§ãã ç« ãžã®ã¹ã©ã€ãã®æ
å ±ã¯ãç« èªäœã«æé©ãªããŒãã·ãŒãã§ãã
ç§ã®æèŠã§ã¯ããã©ãŒã§ç Žå£çãªãã©ã¯ãã£ã¹ã®1ã€ã¯ãåºæ¬çãªC ++ã¿ã€ãããããã®çžäºäœçšãããã³åå²ãã«ãŒããååž°ã®è©³çްãªäœæ¥ã®è©³çްãªç ç©¶ã§ãã ãã®æ®µéã§ã¯ãããã¯åãªãèªéã§ãã é·å¹ŽçŽ æŽãããéçºè
ã«ãªããŸããã unsigned short
ããint
倿ããããã®ïŒäžæ¡çãªïŒã«ãŒã«ã説æããããšã¯ã§ããŸããã
第1ç« ãšç¬¬2ç«
ããã°ã©ãã³ã°ãéå§ããã«ã¯ãåŠçãå¿
èŠã§ãïŒ
- ãœãããŠã§ã¢éçºè
ã«ãšã£ãŠéèŠãã€æçšãªã¿ã¹ã¯ã®ã¢ã€ãã¢ããããã®è§£æ±ºã«æåããããšãã顿ããããŠå°ãã®çæ³äž»çŸ©ã
- å®éšã®ããã«äœæãå®è¡ãããã³å€æŽã§ããé®®ãããªäŸã
äž¡æ¹ãéèŠã§ãã ããã«è¬çŸ©1ã®ååãæ§ããããšãææ¡ããŸãã
第1ç« ã®ç®çã¯ãè奮æãé«è²Žãªç®æšãžã®æ¬²æ±ãããæèãäŒããããšã§ãã è¡ãŸã¿ãã§æŽåçãªãããªã²ãŒã ãäœæããããšã§ã¯ãããŸããã
ïŒæ¿æ²»å®¶ãšããŠã§ã¯ãªããæè¡å°éå®¶ãšããŠïŒäžçãæãããå Žåã¯ãã³ã³ãã¥ãŒã¿ãŒã䜿çšããå¿
èŠããããŸãã ããã§æããããç ç©¶ãããŠããã¢ã€ãã¢ãããŒã«ããã¯ããã¯ã¯ã人é¡ãåé²ãããŸãã ç§ãã¡ã¯äžè¬çã«ãããªã²ãŒã ã«å察ããŠããŸããã ç§ãã¡ã¯ããããªã²ãŒã ãã³ã³ãã¥ãŒã¿ãŒã®äž»ãªçšéã§ãããšããäžè¬çãªèª€è§£ã«å察ããŠããŸãã ããããæ©äŒã«ãã»ãšãã©ã®ãããªã²ãŒã ã¯ãã®ã³ãŒã¹ã§åŠç¿ã§ãããã¯ããã¯ã䜿çšããŠC ++ã§èšè¿°ãããŠãããšèª€ã£ãŠèšåããŸãã
å€ãã®åŠçã¯ãããŒããŒããšç»é¢ãåããPCãšã¯ç°ãªãå€èгã®ã³ã³ãã¥ãŒã¿ãŒãæ³åããã®ãå°é£ã§ãã ã³ã³ãã¥ãŒã¿ã®å€§éšåãäœã§ããããäœã«äœ¿çšãããŠããã®ãã人ã
ãäœã䜿ã£ãŠããã®ããäŒããããšã¯éåžžã«äŸ¿å©ã§ãã æ¥çïŒç±³åœããšãŒããããããã³ãã®ä»ã®åœïŒã«ã¯æ
å ±ã·ã¹ãã ã®åªããæ§ç¯è
ãååã«ããªãããšãåŠçã«æãåºãããŠã害ã¯ãããŸããã ãããŠãããã¯åœŒããææãªãã£ãªã¢ãšè¯ã絊æãæã£ãŠããããšãæå³ããŸãã åéã®ããã°ã©ããŒã§ã¯ãªã芪ã䞡芪ãšã¯ç°ãªããçåŸèªèº«ãããã«ã€ããŠèããå¿
èŠã¯ãªããããããŸããã å€ãã®äººã
ïŒäººæ°ã®ãžã£ãŒããªã¹ãããã£ãªã¢ã«ãŠã³ã»ã©ãŒã䞡芪ïŒã¯2000幎ã®ãããã³ã 屿©ãèŠããŠããããã¹ãŠã®æè¡çãªä»äºã¯æµ·å€ã«å§èšããããšèãããããããŸããã è³æ Œã®ããæè¡è
ãå¿
èŠãšããã®ã¯ã¢ã¡ãªã«ã®ããžãã¹ãã³ã§ã¯ãªãããšã ã¢ã¡ãªã«ã®å€§åŠã§é»æ°ãšã³ã³ãã¥ãŒã¿ãŒãå°æ»ããŠããã»ãšãã©ã®åæ¥çãæé«ã®å¹³å絊äžãåãåã£ãŠããããšã«ç°è°ãå±ããŸãã çŽç²ãªç§åŠãããžãã¹ãªã©ã®å°é家以äž
åçã®ããŸããŸãªãã©ãããã©ãŒã ã«æ³šæããŠãã ããã å€ãã®åŠçã¯ãã³ã³ãã¥ãŒã¿ãŒãäœã§ãããã«ã€ããŠéåžžã«ãããŸããªèããæã£ãŠããŸãã ããã®ãœãããŠã§ã¢éçºè
ã¯ããã£ãªã¢ã®äžã§ããŸããŸãªãã©ãããã©ãŒã ã«åºäŒãââããšãã§ããŸããéã®å
端ã«ããã³ã³ãã¥ãŒã¿ãŒããéšå±å
šäœãåãå°œãããã¢ã³ã¹ã¿ãŒããè€æ°ã®å€§éžã«åæ£ããã¢ã³ã¹ã¿ãŒãŸã§ã
第2ç« ã§ã¯ãããŒã«ã®ç޹ä»ã«ã€ããŠèª¬æããŸãã ãã®äžã§ãåŠçã¯æãç°¡åãªããã°ã©ã ãHelloãworldïŒããå®è¡ããããã«äœãããå¿
èŠãããããåŠã³ãŸãã 圌女ã¯ãšãŠãå¹³å¡ã§ãã ããªãèªèº«ããããéåºŠã«æ··ä¹±ãããå¿
èŠã¯ãªãïŒèª¬æããå¿
èŠããªãïŒïŒå ŽåãåŠçã®å
žåçãªåå¿ã¯ãåé¡ã¯äœã§ããïŒãã§ãã ãããŸã§ã®ãšãããåé¡ã¯ãããŸãããçåŸãããŒã«ãç¿åŸãã課é¡ã®ããã¹ããèªã¿ãæŒç¿ãè¡ãç¿æ
£ã身ã«ä»ããã°åé¡ã¯ãããŸããã
åžžã«ãããšãããã»ã¯ã·ã§ã³ãã芧ãã ããã ããã¯éåžžãç« èªäœãŸãã¯ãããäœã«ã€ãªãããã«ã€ããŠéèŠãªããšãèšã£ãŠããŸãã
è¬çŸ©çªå·1ã§ã¯ããããã®äž¡æ¹ã®ç« ã®å
容ãæããã«ããåŠçã«ã³ãŒã¹ã®æŠèŠãæäŸããæçµçã«ã©ã®ãããªçµæã«ãªããã«ã€ããŠã®ã¢ã€ãã¢ãæäŸããŸãïŒãœãããŠã§ã¢ã®éèŠæ§ã«é¢ããå
¥éçãªè°è«ã«å ããŠïŒã ã³ãŒãã®æ§é ãšãæ£ç¢ºããšãããã§ãã·ã§ããªãºã ã«å¯Ÿããåºæ¬çãªæ¬²æ±ã«ç¹ã«æ³šæãåããããŠããŸãã
ã¹ã©ã€ãäžã®åçã®èª¬æã¯éåžžãæ¬èªäœã§ç¹°ãè¿ãããŸãã
æãããŠããé£è¡æ©ã¯ãããŒã€ã³ã°787ïŒC ++ã§ã¯é£è¡ã«é¢äžããªãã·ã¹ãã ã§ãïŒãšé£è¡äžã®F35ïŒãããµã¹ã®ãã©ãŒãã¯ãŒã¹äžç©ºïŒã§ãã 颚åã¿ãŒãã³ã¯ããã¡ããC ++ã§ããã°ã©ã ãããŠããŸãã ãããŠããã®ãã©ãã¯ã¯ãç³æ²¹é±åºã®å°éæ¢æ»ã«äœ¿çšãããŠããŸãã å€ãã®PCã¯ããã¯ã€å³¶ã®ããŠãã±ã¢å±±ã®é äžã«ããã±ãã¯å€©æå°ãæäœããŠããŸãã
åå¿è
ã察象ã«ããŠããããããHelloãworldïŒãã®ç°¡åãªèµ·å ããã¯å€ãã®å®éçãªåé¡ã«é¢é£ããŠããŸãïŒå€ãã®åŠçã¯å€§åŠã®ãµãŒããŒã«ã¢ã«ãŠã³ããæã£ãŠããªããäœäººãã¯C ++ã³ã³ãã€ã©ãæã£ãŠããªããã©ãã§å
¥æã§ããã®ãããããªããäœäººãã®æå°å©æã¯äŒæãå€ã®ã€ã³ã¿ãŒã³ã·ããããæ»ã£ãã°ããã§ãã æåã®è¬çŸ©ã®åã«ã管çäžããã³ç©æµäžã®åé¡ã解決ããããã«ãã¹ãŠãè¡ã£ãŠãã ããã å¯èœã§ããã°ãéå§ã®1é±éåã«ãã£ãŒãã³ã°ã¢ã·ã¹ã¿ã³ããšé¢è«ããåé¡ãæå°éã«æããæ¹æ³ãšãããã§ãåé¡ãçºçããå Žåã®è§£æ±ºæ¹æ³ã決å®ããŸãïŒ150人ã®åŠçãããå Žåãäºæããªãåé¡ãçºçããŸãïŒã å
šå¡ãããã°ã©ã ãHelloãworldïŒããæ£åžžã«å®è¡ã§ããããã«ã1åç®ãš2åç®ã®è¬çŸ©ã®éã«ã¢ã·ã¹ã¿ã³ããé
眮ããããïŒããã«è¯ãïŒã¢ã·ã¹ã¿ã³ãã確ä¿ããŸãã è¬çŸ©çªå·2ã®åã ãããè¡ããªããšãäžéšã®åŠçã¯ã¡ã€ã³ã°ã«ãŒãã«äœé±éãé
ãããšã£ãããã¯ã©ã¹ãèŸãããããããšãããããŸãã
çåŸãå©ããåã«ããã¹ãŠã®ã¢ã·ã¹ã¿ã³ããåç« ãå®éã«èªãã§ãã ããã åŸæ¥ã®ã³ãŒã¹ã§C ++ã®ç¥èããããã«ã¯Javaã®ç¥èãæã€ã¢ã·ã¹ã¿ã³ããåŒãä»ããããšã¯ãæªãèãã§ãã
ãã®è¬çŸ©ã§ã¯ã欺whatãšã¯äœã§ãããããã§ãªããã®ãåæããŸãã å€ãã®æ°å
¥çã¯ããã«å°ãæžæããŸãã å
±åŠã¯äžæ£è¡çºãšèŠãªãããŸããïŒ èª°ãã«è§£æ±ºãããã¿ã¹ã¯ãåž³æ¶ãã«ããããšã¯çŠæ¢ãããŠããŸããïŒ ïŒãœãããŠã§ã¢ïŒã©ã€ãã©ãªã¯èš±å¯ãããŠããŸããïŒ ç§ãã¡ã®çãïŒããããã¯ãã以åã®ããæ¹ãå¿ããå Žåã®ã¿ã§ãã å«çã説æããå¿
èŠãããå Žåãããã¯ç©èªã«ãµããããææãããããŸããã
ããã°ã©ãã³ã°ã®å¿çšåéããªã¹ãããéã«ãç§ã¯å€ãã®äººãšåæ§ãæè²æŽ»åãèŠå€±ããŸãã åŠçã®ç®æšãæåž«ïŒå€§åŠãŸã§ïŒãç¹ã«ç§åŠåéã®æåž«ïŒåã³ã倧åŠãŸã§ïŒã«ãªãããšããŸãã¯èª°ããæè¡ã¹ãã«ïŒãã¬ãŒããŒãæè¡ä»æ§ãªã©ïŒã®æ®åã«æžå¿µãããå ŽåããœãããŠã§ã¢éçºã®åºç€ã¯åœ¹ã«ç«ã€ã ãã§ãªããå¿
èŠã§ãã æããã«ãããã°ã©ãã³ã°ã¯äž»ã«è¥è
ã«ç§åŠãšæè¡ãçå£ã«èããããä¿ããŸããããããç«¶æãçç©ã·ã¹ãã ã®èŠèŠåã«ã€ããŠèããã ãã§ãã
ããã«ããå®äžçã®ã¢ããªã±ãŒã·ã§ã³ã®ããã®ãœãããŠã§ã¢éçºããæå³ãããšãããç£æ¥ãã«ã€ããŠæã
話ããŸãã å®éã®ããã°ã©ã ã®äœæã¯ã倧åŠãç 究宀ãå·ããã³éå¶å©çµç¹ã§ãçºçããå¯èœæ§ãããããšãèæ
®ãã䟡å€ããããŸãã
æåã®3ã€ã®è¬çŸ©ã®éã®ã©ããã§ãåäŸã¯ã©ã®ãã©ãããã©ãŒã ã§ãå®è¡ã§ããããšã«æ³šæããŠãã ããã WindowsãAppleãLinuxãããã³Unixäžã®PCã«ã€ããŠèšåããŸãã æ¬ããã®ãã¹ãŠã®ã³ãŒãã¯ããµããŒããµã€ãã§èŠã€ããããšãã§ããŸãã ç§»æ€æ§ã¯éåžžã«éèŠã ãšèããŠããŸãã ã»ãšãã©ã®åŠçã¯ç§ãã¡ã«åæããªããã圌ãã®æå³ãçè§£ããŠããŸããã ãã ãããããã®å€ãã¯çŸåšã®ã³ã³ãã¥ãŒã¿ãŒã«é¢é£ä»ããããŠããããããŒã¿ããªãã£ãããµããŒãããã³ãŒã¹ã¯ãã¹ãŠã®ãŠãŒã¶ãŒã«åœ¹ç«ã¡ãŸãã åŠçããææ°ã®C ++ã³ã³ãã€ã©ãåããä»»æã®ã·ã¹ãã ãã䜿çšã§ããããã«ãã倧åŠã§äœ¿çšãããŠããã·ã¹ãã ã«å¯ŸããŠã®ã¿çŽæ¥ãµããŒããæäŸããŸãã ã»ãšãã©ã®åŠçã¯Windowsã䜿çšããŸãããåžžã«å°æ°ã®Macããã³LinuxãŠãŒã¶ãŒãããŸããã
ãhomemadeãããããŒãã¡ã€ã«std_lib_facilities.hã䜿çšããŸãã ãã ããããã¯çæ³çãªã¢ãããŒãã§ã¯ãªãå ŽåããããŸãã
- ããã€ãã®ããããŒãã¡ã€ã«ïŒ \ <string> ã \ <vector>ããã³\ <algorithms> ïŒããã³é¢é£ããäºå®ã«ã€ããŠæ©æã«åŠçã«äŒããå¿
èŠæ§ããé¢ããŸããã
- åå空éã«ã€ããŠ
- ã«ã¹ã¿ã ã¿ã€ããšçµã¿èŸŒã¿ã¿ã€ãã®éãã«ã€ããŠ
- ããããŒãã¡ã€ã«ãšããã«æ¥ç¶ããããŒã«ã®å¯Ÿå¿ã«ã€ããŠ
- usingãã£ã¬ã¯ãã£ãã䜿çšããããŸããŸãªæ¹æ³ãšãããŒã ã¹ããŒã¹ãæç€ºçã«æå®ããå¯èœæ§ã«ã€ããŠ
- ãã¡ã€ã«ã¯C ++æšæºã«åŸã£ãŠæžãããŠãããåŸã§è§£æãããŸã
åŠ¥åæ¡ãšããŠã std_lib_facilities.hã䜿çšããŠæåã®ç« ã®ã³ãŒããç°¡çŽ åããããšã«ããŸãã ã 第8ç« ã§ã¯ãããããŒãã¡ã€ã«ãšåå空éã«ã€ããŠè©³ãã説æããŸãã string ã vector ã iostreamããã³ã¢ã«ãŽãªãºã ã®è©³çްãªèª¬æã¯ããã«åŸã§è¡ãããŸãã
çåŸã«ãéæ³ãã ããäžããªãããšã«éåžžã«èå³ããããŸãã ããã§ãããïŒincludeãstd_lib_facilities.hãšãããã¬ãŒãºã¯ããæšæºã©ã€ãã©ãªã®ããŒã«ïŒæ©èœïŒã䜿çšã§ããããã«ããŸãïŒãããŠå°ãåŸã§èª¬æããŸãïŒãã¯ããã³ã³ãã€ã©ãŒãå®è¡å¯èœã³ãŒããçæããããããåªæã«äŒŒãŠããŸããã
æ¬ã«å ããŠã std_lib_facilities.hããããŒãã¡ã€ã«ãããŠã³ããŒãã§ãããµããŒããµã€ãã«ã¢ã¯ã»ã¹ã§ããå¿
èŠããããŸãã ã€ã³ã¿ãŒãããããªãå Žåã¯ããã®ããã¥ã¡ã³ãã®æåŸã«ãã®ãã¡ã€ã«ã®å
å®¹ãæ·»ä»ããŸããã
ç°ãªãã·ã¹ãã ãIDEãã³ãã¥ããã£ã¯ãããããŒãã¡ã€ã«ãšã³ãŒããã¡ã€ã«ïŒ.cppïŒã®å Žæã«é¢ããŠç°ãªãèŠåã䜿çšããŸãã ãããžã§ã¯ãã®æ§é ã¯åå¿è
ãæ··ä¹±ãããå¯èœæ§ããããŸãïŒç§èªèº«ãæ··ä¹±ããããšããããŸãïŒã æ¬ã¯ã.hãã¡ã€ã«ãš.cppãã¡ã€ã«ãåããã©ã«ããŒã«ãããšããåæã§èª¬æãããŠããŸãã ãããã£ãŠããã£ã¬ã¯ãã£ãã«ããããŒãã¡ã€ã«ãå«ããŸã
#include "std_lib_facilities.h"
å¥çŽã«å¿ããŠãçåŸã«äœ¿çšãå§ããããšãã§ããŸã
#include "../std_lib_facilities.h"
ãŸãã¯
#include "../../std_lib_facilities.h"
ãŸãã¯ãããŒã«ã«å¥çŽã«æºæ ããå¥ã®ãªãã·ã§ã³ã ç°å¢å
ã§æ£ããé
眮ããæ¹æ³ãããç¥ã£ãŠããŸãã æšæž¬ããããšããã§ããŸããã
std_lib_facilities.hã®ååŸå Žæ ãä¿åæ¹æ³ãããã³ã³ã³ãã€ã©ãŒã«ãã£ãŠã¯ãããã¡ã€ã«ã®æåŸã«æ¹è¡ããããŸããããšããèŠåã衚瀺ãããå ŽåããããŸãã ç§ã®æèŠã§ã¯ãããã¯æããªèŠåã§ãã ãã¡ã€ã«ã®æåŸã«ç©ºã®è¡ã远å ããŠãã³ã³ãã€ã©ãŒãã·ã£ããããŠã³ããããã«ããŸãã
ã³ãŒããã¡ã€ã«ã«ã¯.cppæ¡åŒµåã䜿çšããããããŒãã¡ã€ã«ã«ã¯.hæ¡åŒµåã䜿çšããŸãã ãŸãããã®äž»é¡ã«é¢ããŠç°ãªãåæããããŸãã å€ãã®å Žåãã³ãŒãã®.ccæ¡åŒµåãèŠã€ããããšãã§ããŸãã ããã€ãã®å Žæã§ã¯ã .cxxãš.Cã䜿çšããŸãã ãŸããäžéšã®ã ãã·ã¥ïŒããã³ãã®ããŒã«ïŒã¯ã .hã§ã¯ãªã.hhãŸãã¯.Hã奜ã¿ãŸãã ãã¡ã€ã«æ¡åŒµåãåæã§ãããèšèªã®äžéšã§ã¯ãããŸããã
ç§ãã¡ã®åŠçã®ãã¡ã60ïŒ
ããã§ã«ããã°ã©ãã³ã°ãè¡ã£ãŠããã40ïŒ
ããŸã 1è¡ã®ã³ãŒããèŠãŠããŸããã æåã®æ°é±éã¯ãçåŸãã¬ãã«ã¢ãããã誰ããåããŠäœ¿çšããææãããã«å§ããããããã«è¿
éã«åãçµã¿ãŸãã åžžã«ããã°ã©ã ã«åå ããæåã«æ«é²ããåŠçãããŸãã ããã°ã©ãã³ã°ã®æ¬ç©ã®åå¿è
ã«ã¯æããããããŸããã äž¡æ¹ã®ã°ã«ãŒãã説åŸããå¿
èŠããããŸãïŒ
- ããã°ã©ãã³ã°çµéšããªããŠããã¹ã¿ãŒã§ããçŽ æ
- é
ããæ©ãããããã°ã©ãã³ã°ã®çµéšããã£ãŠãã圌ãã¯åŠæ ¡ã«ããªãäœãã«åºäŒãã§ãããã sayingã«ãããããã«ãã倧åŠãžãããããã
第2ç« ããšãã
- C ++ã¯ãå¹
åºããœãããŠã§ã¢éçºã¿ã¹ã¯çšã®ããã°ã©ãã³ã°èšèªã§ãã äŸã¯ããŒãžã«ãããŸã ã
- äºéåŒçšç¬Šä»ãããã¹ã
"
ã¯ãC ++ã§ã¯æååãªãã©ã«ãšèŠãªãããŸãã - åŒ
\n
ã¯ã次ã®è¡ã«æãè¿ãããšãæå³ãããç¹æ®æåãã§ãã - coutãšããååã¯ãæšæºåºåã衚ããŠããŸãã ãéä¿¡æžã¿ããšããããã¹ããç»é¢ã«è¡šç€ºãããŸãã
- ãœãŒã¹ã³ãŒãã§ã¯ã
//
èšå·ã®åŸã«èšè¿°ããããã¹ãŠã®ããã¹ãã¯ã³ã¡ã³ããšèŠãªãããŸãã ã³ã¡ã³ãã¯ã³ã³ãã€ã©ã«ãã£ãŠç¡èŠãããã³ãŒããèªãã§ä¿å®ãã人ã®ããã«æžãããŠããŸã - ããã°ã©ã ã®æåã«ã圌ãã¯éåžžãããã°ã©ã ã®ç®çã説æããã³ã¡ã³ããæžããŸãã ãã®ã¿ã€ãã®ã³ã¡ã³ãã¯ãã©ã®ãããªã¢ã€ãã¢ãæ£åŒã«ãæ£ç¢ºã«ããããŠå®å
šã«ã³ã³ãã¥ãŒã¿ãŒã«äŒããã¹ããããéçºè
ã«æãåºãããŸãã
- ã#includeãã£ã¬ã¯ãã£ããã¯ãã³ã³ãã¥ãŒã¿ãŒããã¡ã€ã«ããæ©èœãå«ããïŒäœ¿çšå¯èœã«ããïŒããã«å¿
èŠã§ãã
- std_lib_facilities.hãã¡ã€ã«ã¯ãæšæºC ++ã©ã€ãã©ãªã®ããŒã«ã䜿çšã§ããããéèŠã§ãã
- ãã¹ãŠã®C ++ããã°ã©ã ã«ã¯ããšã³ããªãã€ã³ãïŒmainãšãã颿°ïŒãå¿
èŠã§ãã ããã°ã©ã ã®å®è¡ã¯ããããå§ãŸããŸãã
- ã¢ã¯ã·ã§ã³ãèšè¿°ããããªããã»ããµãã£ã¬ã¯ãã£ãã§ã¯ãªãC ++ããã°ã©ã ã®éšåã¯ãã¹ããŒãã¡ã³ããšåŒã°ããŸãã
- C ++ã³ã³ãã€ã©ã¯ããœãŒã¹ã³ãŒãïŒäœæããã³ãŒãïŒã人éãèªã¿åãã圢åŒããããã·ã³ã³ãŒããã«å€æããŸããããã¯ã³ã³ãã¥ãŒã¿ãŒã«ãã£ãŠå®è¡ãããŸãã
- ã³ã³ãã€ã©ã¯ãææ³ã®æ£ç¢ºæ§ã«ã€ããŠãœãŒã¹ã³ãŒããã¹ãã£ã³ããŸãã ååèªãå®çŸ©ããå¿
èŠããããŸãã ããã°ã©ã ã«ã¯ãããã°ã©ã ã®éå§åã«èå¥ã§ããä»ã®æãããªãšã©ãŒããã£ãŠã¯ãªããŸããã ã³ã³ãã€ã©ã¯ããã¹ãŠã®ãã³ã³ãã€ã«ãšã©ãŒãã解決ãããå Žåã«ã®ã¿ããã°ã©ã ãã³ã³ãã€ã«ããŸãã
- ã³ã³ãã€ã©ã¯ãããããããã°ã©ãã³ã°äžã®ããªãã®èŠªåã§ãã
- ãªã³ã«ãšã¯ãããã°ã©ã ã®ã³ã³ãã€ã«ãããéšåãå®è¡å¯èœããã°ã©ã ã®åœ¢ã§ãªã³ã¯ããããã°ã©ã ã§ãããå€ãã®å ŽåãããŸããŸãªäººã
ã«ãã£ãŠéçºãããŸãã
- ãªããžã§ã¯ããšå®è¡å¯èœãã¡ã€ã«ã¯ãã·ã¹ãã éã§ç§»æ€ã§ããŸããã ããšãã°ãWindowsãã·ã³ã§ã³ã³ãã€ã«ãããšãLinuxãã·ã³ã§ã¯èµ·åããªãWindowsçšã®ãªããžã§ã¯ããã¡ã€ã«ãååŸããŸãã
- ã³ã³ãã€ã©ããšã©ãŒãæ€åºããå Žåãããã¯ã³ã³ãã€ã«æãšã©ãŒãšåŒã°ããŸãã ãªã³ã«ããªã³ã¯æãšã©ãŒã®å Žåã èµ·ååŸã«æ€åºããããšã©ãŒã¯ãå®è¡æãšã©ãŒãŸãã¯è«çãšã©ãŒã®ããããã§ãã
- ååãšããŠãã³ã³ãã€ã«ãšã©ãŒã¯ãªã³ã«ãŒãšã©ãŒãããèŠã€ããŠä¿®æ£ããããã§ãã ãŸãããªã³ã«ãšã©ãŒã¯ãå®è¡æãšã©ãŒãè«çãšã©ãŒãããç°¡åã«èŠã€ããŠä¿®æ£ã§ããŸãã
- IDEãŸãã¯IDEããŒã«ã¯ãã³ãŒãã®èšè¿°ããããã°ãã³ã³ãã€ã«ãæ§æãããã³å®è¡ãæ¯æŽããŸãã
- IDEã«ã¯éåžžãæ§æåŒ·èª¿ãšãã£ã¿ãŒãå«ãŸããŠããŸãã ãã®æ©èœã¯ãã³ã¡ã³ããããŒã¯ãŒããããã³ã³ãŒãã®ä»ã®éšåãåºå¥ããã®ã«åœ¹ç«ã¡ãŸãã
- èªãã ããšãã¯ã©ã¹ã®è¬åž«ããèããããšããã¹ãŠçè§£ããŠãããšããå°è±¡ãåãããããããŸããããããã°ã©ãã³ã°ã¹ãã«ã身ã«ä»ããã«ã¯ç¹°ãè¿ããšç·Žç¿ãå¿
èŠã§ãã
第3ç« ãªããžã§ã¯ããåãããã³å€
ãã®æ®µéã§ã¯ãå€ãååŸããŠç¶æããã®ã«åºæ¬çã«è€éãªãã®ã¯äœããªãããšãæç¢ºã«ããããšãéèŠã§ãã ãã ãããã®èãæ¹ã¯ãããã°ã©ããŒã§ãªã人ãç¹ã«æ°åŠã®ç¥èãè±å¯ãªããã°ã©ããŒã§ãªã人ã«ãšã£ãŠã¯äºæ³å€ã®æ°ãããã®ã§ãã 顿šã¯ããŸãæ©èœããŸãã倿°ã¯ãå€ãå
¥åã§ããããã¯ã¹ã§ãã ããã«ã顿šã䜿çšããŸãã倿°ã®åã¯ããã¯ã¹ã®åœ¢ç¶ã§ããã倿°ã«å
¥ããããšãã§ãããã®ã決å®ããŸãã
çåŸã課é¡ãšããã€ãã®æŒç¿ãå®äºããããšãéèŠã§ãã 以åã«ããã°ã©ã ããåŠçã¯ãrogæ
¢ãããŠãããã€ãã®æ°ããäºå®ãã¹ãããããåŸåããããŸãïŒåŠæ ¡ãšæ¯èŒããŠïŒã 第4ç« ã§å
¬åŒã«ç¥ãåãåã«ãæå³çã«ifã³ã³ã¹ãã©ã¯ãã䜿çšããŸããããã¯ã幌çšåããç¥ã£ãŠããããšã®åãªãæ°ããèšé²ã§ããããšã«æ³šæããŠãã ããã ã»ãŒåãæ¹æ³ã§ãç®è¡æŒç®ã髿 ¡çå
šå¡ã«éŠŽæã¿ãããããšã瀺ããŸãã ããã°ã©ãã³ã°èšèªããŒã«ã¯ãåŠçããã§ã«ç¥ã£ãŠããã¢ã€ãã¢ã®çããèšé²ã§ãã 宿çã«ææããããšãéèŠã§ãã å¥ã®æš¡ç¯çãªäŸãè§£æãããã³ã«ããããçåŸã«ç¹°ãè¿ã䟡å€ããããŸãã
ããã§æ¬åœã«æ°ããã®ã¯ãå²ãåœãŠãåæåãããã³ã¿ã€ãã§ãã
å€ãã®äººïŒç¹ã«æ°åŠãããç¥ã£ãŠãã人ïŒã«ãšã£ãŠãïŒã³ã³ãã¥ãŒã¿ãŒã«ããïŒã³ãã³ãã®ã·ãŒã±ã³ã·ã£ã«ãªå®è¡ã®ã¢ã€ãã¢ã¯äºæ³å€ã§ããããšã«æ³šæããŠãã ããã 1æãŸãã¯2æã®ã¹ã©ã€ããçšæããããã°ã©ã ããã³ã³ãã¥ãŒã¿ãŒã®ããã«ã1è¡ãã€è©±ããŠãã ãããäžè¬çãªã¢ã€ãã¢ãåŸãããã«ããŸãã ããã«ã¯æéãããããŸããããå°æ¥ã®åé¡ãåé¿ã§ããŸãã ç¹ã«åãã£ãŠçµäºãããªã¹ã¯ãããå Žåã¯ãã¹ã©ã€ã20ã21ïŒãå²ãåœãŠãšå¢åãïŒãš27ïŒãå¥ã®åçŽãªèšç®ãïŒãåãããšãã§ããŸãã 第4ç« ã¯ç¹°ãè¿ãã«ãªããŸãã
ãã®æç¹ã§çåŸã«ã¿ã€ãã»ãŒããã£ã®åé¡ãããŒãããã®ã¯ãªãã§ããïŒ ç®æšã¯ãæè¡çãªå¶éãšçŸå®äžçã®å¶éã®äž¡æ¹ãèæ
®ããèãæ¹ã®æ§ç¯ãéå§ããããšã§ããç§ãã¡ã®èšèªãšå®è·µã¯ãããŒããŠã§ã¢äžã®åé¡ã®è§£æ±ºçãåã«è¡šçŸããæ¹æ³ã§ãã éã¯æ¬ç©ã§ããããã®ãããªå¶éã課ãããšãã§ããŸãã ããã¯ããã°ã©ãã³ã°ã³ãŒã¹ïŒãœãããŠã§ã¢éçºïŒã§ãããæ°åŠãå²åŠã§ã¯ãããŸããã
第3ç« ããšãã
- å®éã®ããã°ã©ã ã¯éåžžãããã€ãã®å
¥åããŒã¿ã«åºã¥ããŠçµæãçæããŸãã èµ·åãããã³ã«åãããã¹ãã衚瀺ãããããã§ã¯ãããŸããã
- ãªããžã§ã¯ããšã¯ããªããžã§ã¯ãã«å«ãŸããæ
å ±ã®çš®é¡ã瀺ãã¡ã¢ãªé åã§ãã
- 倿°ã¯ãæå®ãããååãšã¿ã€ãïŒããšãã°ãintãŸãã¯stringïŒãæã€ãªããžã§ã¯ãã§ãã ãªããžã§ã¯ãã«é
眮ã§ãããã®ã¯ãã¿ã€ãã«ãã£ãŠç°ãªããŸãã ããšãã°ãæååã¯stringåã®å€æ°ã«ãæŽæ°ã¯intåã«é
眮ã§ããŸãã
- ããã°ã©ã ãã¡ã¢ãªãå²ãåœãŠãæ°ããååã䜿çšã§ããããã«ãªãã³ãã³ãã¯ã宣èšãšåŒã°ããŸãã
- ãŠãŒã¶ãŒããããŒã¿ãèªã¿åãã«ã¯ãcinã䜿çšãããŸãã ãã®ååã¯ãæšæºã©ã€ãã©ãªã§èª¬æãããŠããæšæºå
¥åã¹ããªãŒã ïŒè±èªã§ã¯ãsi-inããšçºé³ããŸãããæåå
¥åãïŒã«é¢é£ä»ããããŠããŸãã
- ã³ã³ãã€ã©ã¯å倿°ã®åãèšæ¶ãã宣èšã§æå®ãããåã«åŸã£ãŠãããã䜿çšããããšã確èªããŸãã
- åŒ
cin >> name >> age;
2ã€ã®å€ãèªã¿åããŸãã æåã¯æåååã®åå倿°ã«é
眮ãããŸãã 2çªç®ã¯ãintåã®å¹Žéœ¢ã§ãã 1ã€ã®å
¥åã³ãã³ãã§è€æ°ã®å€ãèªã¿åãããšãã§ããããšã«æ³šæããŠãã ããã åæ§ã«ã1ã€ã®åºåã³ãã³ãã§è€æ°ã®å€ãåºåã§ããŸãã - äžéšã®æŒç®åã¯ãã»ã¯ã·ã§ã³2.4ã®è¡šã«èšèŒãããŠããŸãã ïŒçŽperevãããããã»ã¯ã·ã§ã³3.4ãåç
§ïŒ
- æåå倿°ã¯ããã®äžã®æåæ°ã远跡ããŸãã
- ãªããžã§ã¯ãããã®ã¿ã€ãã®èŠåã«åŸã£ãŠã®ã¿äœ¿çšãããå Žåãããã°ã©ã ãŸãã¯ããã°ã©ã ã®ãã©ã°ã¡ã³ãã¯ã¿ã€ãã»ãŒãã§ãã
- . , C++ , .
- !
4
, (if, while, for, switch) (" , ") â , .
( ).
. . . , "" , ( ). , . , . , 10 : â . . : " , , !". , , . : " " " ".
â . , , - . . . , , ( , , ).
, " " â . , , . .
++x
? ( ) ++x
. x=x+1
"". , ++x
. - for (int i=0; i<max; i=i+1) ...
.
CS. , , . : " C++ , !". . " ". , , , . " ". , . , , (" ; ; â , !"). . , .
, , " ". , , "". . . "", .
, -. , .
4.
(. . )
- . ( 4.1)
- â . ( 4.1)
- , . ( 4.1)
- , . ( 4.1)
- : " , ". ( 4.3)
- . , . ( 4.3)
- . ( 4.3)
- . . ( 4.5)
- (block/compound statement) , . ( 4.5)
- . ( 4.5)
- , ..
;
{}
. ( 4.5) - if-else . , , â . ( 4.6).
- , - , . ( 4.6)
- (switch) . ( 4.7.1)
break;
, break;
. ( 4.7.1)default
. . ( 4.7.1)- , , . ( 4.8)
- for while, , . ( 4.8.3)
- for. (4.8.3)
- for . -. ( 4.8.3)
- while - , , , for. ( 4.8.3)
- , , . ( 4.2)
- " " , . ( 4.2)
- . , , . ( 4.9)
- , (). ( 4.9)
- . , , . ( 4.9.1)
- , . . ( 4.10)
- sort() : . ( 4.10.2)
- , . ( 4.11)
5:
, . , ( ) , .
" ". . .
, .
- - . , . , , .
5.
- , , . , , . ( 5.1)
- , , . ( 5.1)
- , , . , (. ) . ( 5.1)
- , , . ( 5.1)
- :
- , 90% . ( 5.1)
- :
- , , , , , , . ( 5.2)
- : "", . , , . ( 5.3.3)
- C++ , " ", . , ( ) ( ) , . ( 5.6)
- . , . ( 5.6)
- , . , , . ( 5.7)
- , . , . ( 5.8.1)
- , : "
error()
exception&
main()
. ( 5.8.1)
6.
.
, .
. .
, , , . , â .
:
- , .
- ; ; , .
, , . " "; ; , . ( ) . , .
. .
(.. )
( ) , " " "" "". . . , 6 7. .
, â . , . . , . , ( ); , - . 8, .
. , :
- , ( ) .
â .
, ", . ".
.
202-203. 4+5+6+7 , ( ).
4+5 6+7 . Token_stream , . , . , Token_stream . ( , " " , ).
, . , â . " ". â .. â . .
, . . , " , ..." .
, , , . .
6
- â . , ? ( 6.1)
- â , â . ( 6.2)
- â , . ( 6.2)
- , . , , . ( 6.2.2)
- . ( 6.3)
- " " . ( 6.3)
- , , . ( 6.3)
- : , . ( 6.4)
- Token C++. . ( 6.8)
- C++ : () . , , , .
- , â . .
7:
; , , .
â , ( , , ). : , , ..
, :
- ( )
- ( )
- (maintainer)
- ãŠãŒã¶ãŒ
, .. " ".
, (" ") . .
7
- , . ( 7.1)
- , , , . ( 7.1)
- " ", !
- . -, . ( 7.1)
- , . . ( 7.3)
- . ( 7.4, 7.5)
- () , . , . ( 7.6)
- , . ( 7.6)
- . " " . ( 7.6.2)
- , . ( 7.6.2)
- , ; . ( 7.6.3)
- , . , . ( 7.6.4)
- , . . ( 7.6.4)
- . , . ( 7.7)
8. :
â . , . , !
. "" " " " ". , , ( ). , " " ( , " ").
, "" , â . " ", ( ) . . " " " /" . , , . , - "" 25 , . , 25 ( ), . , ( /, iostream). , (. ) (" , "). . , , , , : , .
: ( ). , . . ( ) .
8:
- , - . ( 8.1)
- C++ , C, Java C#, . ( 8.1)
- , , , , . ( 8.2)
- C++, , . ( 8.2)
- ; , . ( 8.2)
- , . ( 8.2)
- , ( ) , . ( 8.2)
- ; , . ( 8.2)
- extern . ( 8.2)
- , -. ( 8.2)
- ; const . ( 8.2.1)
- () . ( 8.2.1)
- C++ , , "- ". ( 8.3)
- std_lib_facilities.h , cout, vector, sqrt(), error(), . ( 8.3)
- . , . ( 8.4)
- â , - . ( 8.4)
- , . . ( 8.4)
9. :
" " ( ). . Date.
(9.4.3). , , , . .
, "" . . . , .. , " " . .
( ). â get() set() , , .
, , , " ".
. , , . " ".
9.
- , . ( 9.1)
- . C++ : . ( 9.1)
- , , .. , . ( 9.1)
- , , . ( 9.1)
- C++ ( ) , .
- , . public.
- , . ( 9.3)
- , -. ( 9.3)
- , . ( 9.4.3)
- , , . _ :: __. ( 9.4.4)
- - . â . , 5 , . ( 9.4.4)
- (enum) , . ( 9.5)
- , C++ , : +, -, *, /, %, [], (), ^, !, &, <, <=, > >=. ( 9.6)
- . ( 9.6)
10. /.
"" ( - ; ). â "". . . (, /, ), .
, :
- ( , )
- ( ) .
- ("" " ")
, , â GUI ( 12-16). : .
10.
- : , , .
- , . / . /. ( 10.1)
- /, , / . ( 10.1)
- - , , , , , . ( 10.1)
- , C++ istream, â ostream. ( 10.2)
- , " " â . , . ( 10.3)
- , , ( ), . ( 10.3)
- , , ( ) , . ( 10.3)
- ostream istream , . ( 10.4)
- . ! , istream , " ":
- good() //
- eof() // (" ")
- fail() // -
- bad() // - ( 10.6)
- , :
11. /
"" . " , //_, ". , , , . ( ) // ( , , , , ). / .
" , ". . 23, , , . : " , 23; . , ".
11.
- , - iostreams, 10, . , . ( 11.1)
- , . , , . ( 11.1)
- , ostream, . , <<.
- << hex << oct . , << hex , , << oct â .
- , â 0, 0x ( 0X). C++.
- : oct, hex, dec, showbase, noshowbase setw.
- .
- : fixed, scientific, general ( standard), setprecision setw.
- general scientific fixed . - 6 .
- (general 6 ) , . " ".
- .
- , . : istream, , ostream â .
- . , , good().
- / , , / , , .
- , : .
- iostream , /, . , , / .
- istream, , istringstream, , â ostringstream.
12.
. - . . /, . , () , / â " ".
, () , .
( ) : (, ), . , "" .
, " " . , , , " ".
FLTK ( ) . /GUI, , . , , FLTK . , . Windows, Linux Mac, . " ; , ".
MSVS GUI. , FLTK , . , ( 180 ), â .
, " Next" , " ". , , , â 16.
( ) , . , , .. , " ".
, 12-16 "". "Next" "" . , , , .
, ( 17), " " . " " â .
13.
( ) , FLTK. ; . (14) : shape - , . , : ; "" . Lines Text .
new . Vector_ref , , , " new". - ( ), ", new Vector_ref ; 17. , ".
private (14).
, . , , .
14.
: , . , . , , . â â " ", . , " , " . , " ; "" " ". , , â , ; , ".
15.
. â 14, 15. , , "" ( " ", - â "", ).
(), . , , ( "" , ). , . exp(). . , . .
expN() . , ( ). , â , . , Function . , . Axis . , . . , " " . , .
"" , (, ( sleep(); , 26.6.1) ( 24.7)
16.
. GUI . iPod . , , " ".
, . , . , , : , , ..
17: .
" " . .
" ":
, "". . , , , " , ".
, std:vector ( 19). ( ) :
, , Java C# ( - â , ).
, . â ; . , - ( C C++). . 18 25, .
, â C++ ( ; . 19). .
18.
, , . C. , .
.
19. ,
reserve(), resize() push_back() ( ""). STL ( 20).
, : RAII . . . , ( , Java).
, "" , ( ). , . , - (. Microsoft C++). , . , , ( ) . .
20.
STL . , " " " " . STL , ( , . ). "" , .
, . "" , STL â , STL. , (accumulate() find()). .
: STL, . , , :
"". . . , â .
21.
. : "!". , ( : " !" â , " ?" â ). â , , . , â . ( , ).
22.
, , . . " ". , .
. . . , , .
- 5 , 80.
C++ . , , . Fortran/Cobol/Lisp , . C++/Java/PHP. , -.
. , .
23.
, , . . . , -, .
, -, -, -, -.
.
. , , ( A,C,G,T: , , , ).
: " C++". : C, C#, Javascript, Java, C++, Ruby, Python ..
( , ) . . , ( ), ( ) .
24.
Matrix, . ( ) - (generic) . ( ).
, . â . , ( ), . .
25.
, . , â . .
, , . . , ( ) . , 17-19 ( ) 24.
C. â , . â . ( C C++). ; ( " " " ").
TEA , , ( ) ( , ).
3 , . 4 F-16 , â , MAN. 1. : , () , â .
, / "", .
26.
, "" . , , , .. , â . , . , . . â . .
27. C
, C , C++. â C++ . â â . . C C++ (. ), "" " ". , "" â , C C++ - â ( ), .
, C , C++. C++. C :
- //
- ããŒã«
- const
- for (C99)
- inline (C99)
, , C++ C, .
/ C C++. . , "" C.
ã¯ãŒãã«ãŠã³ãã®äŸã¯ãé«ã¬ãã«ããã°ã©ãã³ã°ãšäœã¬ãã«ããã°ã©ãã³ã°ã®éãã瀺ããŠããŸãããã¹ãŠã®ãã¬ãŒã³ããŒã·ã§ã³ã³ãŒããèªåã§äœæããå Žåã¯ééã£ãŠãããããããã䜿çšããŸãããstrcmpïŒïŒãšäŸµå
¥åã³ã³ãããŒã®äŸã¯ãä»ã®äŸãããCã®äœ¿çšãæç¢ºã«ç€ºããŠããïŒãããŠäž¡æ¹ãšãC ++ã«é©çšãããïŒãšä¿¡ããŠããŸãã