home *** CD-ROM | disk | FTP | other *** search
Text File | 1979-12-31 | 106.8 KB | 2,601 lines |
- ┌──────────┐
- │ öá⌐½ ZTC │ (c) ÄΓñѽѡ¿Ñ 4 ìö êÆî ¿ éÆ
- │ 18.07.90 │ ─────────────────────────
- └──────────┘
-
-
- æ¿ßΓÑ¼á »α«úαá¼¼¿α«óá¡¿∩ Z O R T E C H C + +
-
- ( Z O R T E C H C + + C O M P I L E R )
-
-
- The World's First 'TRUE' C++ Compiler for MS-DOS Machines
- ─────────────────────────────────────────────────────────
- ÅÑαóδ⌐ ó ¼¿αÑ "¿ßΓ¿¡¡δ⌐" ¬«¼»¿½∩Γ«α æ++ ñ½∩ ¼áΦ¿¡ ß MS-DOS
-
-
- é æÿÇ »«ßΓáó½∩ÑΓß∩ Σ¿α¼«⌐
-
- Zortech Inc, 366 Massachusetts Avenue, Arlington, MA02174
- Tel: 617-646-6703, fax: 617-643-7969
-
- ¿ ñ½∩ óßÑú« «ßΓá½∞¡«ú« ¼¿αá Σ¿α¼«⌐ UK Office:
-
- Zortech Limited, 106-108 Powis Street, LONDON, SE18 6LU
- Tel: 01-316-7777, fax: 01-316-4138
-
- ┌────────────────────────────────────────────────────────┐
- │ ÅÑαÑó«ñ Éπ¬«ó«ñßΓóá "Zortech C++ Compiler": │
- │ │
- │ Part One: The User Guide - Éπ¬«ó«ñßΓó« »«½∞º«óáΓѽ∩ │
- │ Part Two: The Reference Guide - æ»αáó«τ¡«Ñ απ¬«ó«ñßΓó« │
- │ Part Three: Function Library - ü¿í½¿«ΓѬá Σπ¡¬µ¿⌐ │
- │ Appendixes - Åα¿½«ªÑ¡¿∩ │
- │ │
- │ ÅÑαÑó«ñ óδ»«½¡Ñ¡ ó ì«ó«ß¿í¿α߬«¼ Σ¿½¿á½Ñ │
- │ ê¡ßΓ¿ΓπΓá Γ«τ¡«⌐ ¼Ñσá¡¿¬¿ ¿ óδτ¿ß½¿Γѽ∞¡«⌐ ΓÑσ¡¿¬¿ │
- │ ¿¼. æ.Ç. ïÑíÑñÑóá │
- │ │
- │ 630090, ú. ì«ó«ß¿í¿α߬-90, │
- │ »α«ß»Ñ¬Γ á¬áñѼ¿¬á ïáóαÑ¡Γ∞Ñóá, 6 │
- │ ìö êÆî ¿ éÆ Çì æææÉ │
- │ │
- │ ÇóΓ«αδ »ÑαÑó«ñá: âπΓ¼á¡ Ç.Ç., êú¡áΓÑ¡¬« Å.æ., │
- │ èáßΓ«α¡«ó à.Ç., æΓѻᡫó é.Å │
- │ │
- │ ÆÑ½: (8-383-2)324-159, 324-144 │
- │ ─────── ─────── │
- │ │
- │ ì«ó«ß¿í¿α߬ 1990 │
- └────────────────────────────────────────────────────────┘
-
- Ç¡¡«Γᵿ∩
-
- Zortech C++ ∩ó½∩ÑΓß∩ »Ñαóδ¼ ¬«ñ«»«α«ªñáεΘ¿¼ ¬«¼»¿½∩Γ«α«¼
- ñ½∩ ¼áΦ¿¡ ß MS-DOS. ¥Γ« º¡áτ¿Γ, τΓ« éá¼ ¡Ñ ¡πª¡« ΓαáΓ¿Γ∞
- ñÑ¡∞ú¿ ¡á æ-¬«¼»¿½∩Γ«α. é ßἫ¼ ñѽÑ, ßÑ⌐τáß éδ ñÑনΓÑ ó
- απ¬áσ α∩ñ ¬«¼»«¡Ñ¡Γ: ¬«¼»¿½∩Γ«α æ++, æ-¬«¼»¿½∩Γ«α, ½¿¡¬Ñα
- (αÑñá¬Γ«α ßó∩ºÑ⌐), í¿í½¿«ΓѬáα∞, »«½¡«Ñ ¿¡ΓÑúα¿α«óá¡¡«Ñ «¬-
- απªÑ¡¿Ñ αÑñá¬Γ«αá, ¬«¡ΓѬßΓ¡« ºáó¿ß¿¼δÑ »«ñ߬Ậ¿(help) ¿
- í¿í½¿«ΓѬπ úαáΣ¿¬¿, ßá¼πε ߬«α«ßΓ¡πε ¿º óßÑσ, ¬á¬¿Ñ éδ
- ¬«úñá-¡¿íπñ∞ óßΓαÑτ὿!
- Å«½∞ºπ∩ß∞ Zortech C++, éδ ¿¼ÑÑΓÑ ó«º¼«ª¡«ßΓ∞ ß«ó¼ÑßΓ¡«
- ¿ß»«½∞º«óáΓ∞ ¿ ß«ú½áß«óδóáΓ∞ ¬«ñδ ¡á C++, C, áßßѼí½ÑαÑ, á
- Γá¬ªÑ ßó∩ºδóáΓ∞ ¿σ ó«Ññ¿¡« «ñ¡«⌐ ¬«¼á¡ñ«⌐!
- Zortech C++ ó¬½ετáÑΓ »«½¡δÑ í¿í½¿«ΓѬ¿ C++ ¿ C, «¡ ß«ó-
- ¼ÑßΓ¿¼ ß ANSI-ßΓá¡ñáαΓ«¼ ¡á ∩ºδ¬ C. Zortech C++ π¡¿¬á½Ñ¡ ó
- ßó«Ñ⌐ »«ññÑαª¬Ñ ¼δΦ¿, íδßΓα«ú« óδó«ñá ¡á φ¬αá¡, »«óΓ«α¡«
- óσ«ñ¿¼«⌐ í¿í½¿«ΓѬ¿ óδτ¿ß½Ñ¡¿⌐ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐ ¿ í¿í½¿«-
- ΓѬ¿ úÑ¡Ñαᵿ¿ ºóπ¬á.
-
- ÆÑ»Ñα∞ éδ ¼«ªÑΓÑ »ÑαÑ¡ÑßΓ¿ éáΦ¿ ¬«ñδ ¿º Microsoft C ¿½¿
- Turbo C ó ß¿ßΓѼπ Zortech C++ - ¿¼ÑÑΓ ¼ÑßΓ« »«½¡á∩ ß«ó¼ÑßΓ¿-
- ¼«ßΓ∞ í¿í½¿«ΓÑτ¡δσ Σπ¡¬µ¿⌐!
-
- é Zortech C++ «íÑß»ÑτÑ¡á Γá¬ªÑ ¿ ß«ó¼ÑßΓ¿¼«ßΓ∞ ß «Γ½áñτ¿-
- ¬«¼ Codeview Σ¿α¼δ Microsoft!
-
- é«⌐ñ¿ΓÑ ó ¼¿α «íΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡δσ ß¿ßΓѼ »α«úαá¼¼¿-
- α«óá¡¿∩(ÄÄæÅ), ¿ß»«½∞ºπ∩ Zortech C++!
-
- è«¡Ñτ¡«, æ óѽ¿¬, ¡« æ++ ½πτΦÑ!
-
-
- æαáó¡¿Γѽ∞¡δÑ »«¬áºáΓѽ¿ ¿ß»δΓá¡¿⌐ (benchmarks)
- ┌────────────────┬────────┬──────────┬──────┬──────────┐
- │é¿ñ ¿ß»δΓá¡¿∩ │ZortechC│ZortechC++│TurboC│QuickC 1.0│
- ├────────────────┼────────┼──────────┼──────┼──────────┤
- │Sieve ("αÑΦÑΓ«")│ 20.49 │ 20.54 │ 23.62│ 22.72 │
- │Rsieve │ 20.49 │ 20.54 │ 23.62│ 22.03 │
- │Integer │ 1.32 │ 1.38 │ 6.31│ 6.49 │
- │Float │ 0.17 │ 0.22 │ 52.29│ 51.03 │
- │'Float │ 32.73 │ 37.74 │ 52.39│ 51.63 │
- │Pointer │ 17.91 │ 17.96 │ 17.13│ 16.87 │
- │Rpointer │ 17.79 │ 17.91 │ 17.14│ 16.64 │
- │Loop │ 3.90 │ 3.90 │ 3.90 │ 3.90 │
- │Optimize │ 0.49 │ 0.60 │ 8.46 │ 8.79 │
- └────────────────┴────────┴──────────┴──────┴──────────┘
- êß»δΓá¡¿∩ »α«ó«ñ¿½¿ß∞ ¡á Å¥éî ß ¼¿¬α«»α«µÑßß«α«¼ 80286,
- ß«ó¼ÑßΓ¿¼«⌐ ß IBM PC, ß Γá¬Γ«ó«⌐ τáßëë⌐ 6 îúµ ¿ íѺ ß«»α«-
- µÑßß«αá 8087
-
- ￵ѡº¿«¡¡«Ñ «íαáΘÑ¡¿Ñ Σ¿α¼δ Zortech
- ────────────────────────────────────
- 1. Å«ªá½π⌐ßΓá, ¡Ñ αáºñáóá⌐ΓÑ ¬«»¿¿ φΓ«ú« »α«ñπ¬Γá ßó«¿¼
- ñαπº∞∩¼, ߬½«¡∩⌐ΓÑ ¿σ ¬ »α¿«íαÑΓÑ¡¿ε ºá¬«¡¡«⌐ ¬«»¿¿. ¥Γ«
- Ññ¿¡ßΓóÑ¡¡δ⌐ ¿ßΓ«τ¡¿¬ 󫺡áúαáªñÑ¡¿∩ »α«úαá¼¼¿ßΓ«ó, ΓÑσ¡¿-
- τÑ߬¿σ »¿ßáΓѽÑ⌐ ¿ ß½πªáΘ¿σ Σ¿α¼δ Zortech ºá ¿σ ¡ÑóÑα«∩Γ¡«
- í«½∞Φ«⌐ ó¬½áñ ó ß«ºñá¡¿Ñ φΓ«ú« »α«ñπ¬Γá.
- 2. Å«ªá½π⌐ßΓá, ¡Ñ ºáúαπªá⌐ΓÑ φΓπ ß¿ßΓѼπ í«½ÑÑ τѼ ¡á
- «ñ¡«⌐ Å¥éî éáΦÑú« αáí«τÑú« ¼ÑßΓá - φΓ« ¡Ñºá¬«¡¡« ¿, ¬α«¼Ñ
- Γ«ú«, ½¿ΦáÑΓ »α«úαá¼¼¿ßΓ«ó ¿ ¿ºñáΓѽÑ⌐ ¿σ ºá¬«¡¡δσ ºáαáí«Γ-
- ¬«ó.
- 3. æ φΓ«⌐ ß¿ßΓѼ«⌐ «íαáΘá⌐ΓÑß∞ ¬á¬ ß ¬¡¿ú«⌐: »«ñ«í¡«
- Γ«¼π, ¬á¬ ñó«¿¼ ¡Ñ½Ñú¬« τ¿ΓáΓ∞ «ñ¡π ¿ Γπ ªÑ ¬¡¿úπ ó «ñ¡«
- óαѼ∩, á ¬áªñ«¼π ¿º ¡¿σ ¡πª¡« »α¿«íαÑßΓ¿ ß«íßΓóÑ¡¡πε ¬«»¿ε,
- Γᬠ¿ ñ½∩ »«½∞º«óá¡¿∩ ñá¡¡δ¼ »α«ñπ¬Γ«¼, »«ªá½π⌐ßΓá, ¬π»¿ΓÑ
- πºá¬«¡Ñ¡¡πε ¬«»¿ε.
- 4. Zortech Ltd, ÑÑ Σ¿½¿á½δ, á Γá¬ªÑ »«ßΓáóΘ¿¬¿, ñ¿½Ñαδ ¿
- ß½πªáΘ¿Ñ ¡Ñ ¼«úπΓ ¡ÑßΓ¿ Σ¿¡á¡ß«óδÑ »«ΓÑα¿, óδºóá¡¡δÑ áóáα¿Ñ⌐
- ¿½¿ ß½áí«ßΓ∞ε φΓ«ú« »α«ñπ¬Γá.
-
-
-
- ÅÉàäêæïÄéêà
-
- ¥Γ«Γ »α«ñπ¬Γ ∩ó½∩ÑΓß∩ »Ñαóδ¼ ¬«ñ«»«α«ªñáεΘ¿¼ ¬«¼»¿½∩Γ«α«¼
- C++ ñ½∩ ¼áΦ¿¡ Γ¿»á IBM PC/XT/AT. "è«ñ«»«α«ªñáεΘ¿⌐" «º¡áτáÑΓ,
- τΓ« éá¼ ¡Ñ ΓαÑíπÑΓß∩ ΓαáΓ¿Γ∞ ¼áßßπ ñÑ¡Ñú ¡á ÑΘÑ ¬á¬«⌐-½¿í«
- C-¬«¼»¿½∩Γ«α. äÑ⌐ßΓó¿Γѽ∞¡«, éδ Γ«½∞¬« τΓ« »α¿«íαѽ¿ ¿ ¬«¼-
- »¿½∩Γ«α C++, ¿ C-¬«¼»¿½∩Γ«α, ¿ ½¿¡¬Ñα, ¿ í¿í½¿«ΓѬáα∞, ¿
- ¼«Θ¡πε πΓ¿½¿Γπ make. ÆÑ»Ñα∞ éá¼ ¼«ª¡« ß«ó¼ÑßΓ¡« ¿ß»«½∞º«óáΓ∞
- ¿ ß«ú½áß«óδóáΓ∞ ¬«ñδ C++, C ¿ áßßѼí½Ñαá. îδ ó¬½ετ¿½¿ "óºαδ-
- ó¡«⌐" αÑñá¬Γ«α (ZED), ¬«Γ«αδ⌐ ºá»π߬áÑΓ ¬«¼»¿½∩Γ«α, «ßΓá¡áó-
- ½¿óáÑΓ ¬«¼»¿½∩µ¿ε »α¿ «í¡áαπªÑ¡¿¿ «Φ¿í¬¿ ¿ ß««ΓóÑΓßΓóÑ¡¡«
- πßΓá¡áó½¿óáÑΓ ¬παß«α ñ½∩ «í½ÑúτÑ¡¿∩ ¿ß»αáó½Ñ¡¿∩.
-
- Zortech C++ ó¬½ετáÑΓ »«½¡δÑ í¿í½¿«ΓѬ¿ C++ ¿ C, ó Γ. τ.
- »«ññÑ᪬π ¼δΦ¿, íδßΓα«ú« óδó«ñá ¡á φ¬αá¡, «íαáΘÑ¡¿⌐ ¬
- BIOS/DOS ¿ «íαáí«Γ¬¿ »αÑαδóá¡¿⌐. ä½∩ ñ¿¡á¼¿τÑ߬«⌐ «Γ½áñ¬¿
- ¼«ª¡« ó«ß»«½∞ºóáΓ∞ß∩ «Γ½áñτ¿¬«¼ Codeview Σ¿α¼δ Microsoft.
- é µÑ½«¼, φΓ« ¼«Θ¡á∩ ¿ ¡Ññ«α«úá∩ «íΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡á∩
- ß¿ßΓѼá αáºαáí«Γ¬¿ »α«úαá¼¼ ñ½∩ Å¥éî.
-
- C++ αáºαáí«Γá¡ ó Bell Labs ¿ »αÑñßΓáó½∩ÑΓ ß«í«⌐ «íΩÑ¬Γ¡«-
- -«α¿Ñ¡Γ¿α«óá¡¡«Ñ αáßΦ¿αÑ¡¿Ñ ∩ºδ¬á C. Å«φΓ«¼π éδ ½Ñú¬« ¼«ªÑ-
- ΓÑ ¬«¼»¿½¿α«óáΓ∞ πªÑ ßπΘÑßΓóπεΘ¿⌐ C-¬«ñ ¿ ¿ß»«½∞º«óáΓ∞ αáß-
- Φ¿αÑ¡¿∩ »« ¼ÑαÑ ¿σ «ßó«Ñ¡¿∩. é ñ«»«½¡Ñ¡¿Ñ ¬ φΓ«¼π, C++
- «íÑß»Ñτ¿óáÑΓ ½πτΦ¿⌐ »« ßαáó¡Ñ¡¿ε ß ¿¼ÑεΘ¿¼ß∩ ó C ¬«¡Γα«½∞
- «Φ¿í«¬, τΓ« »«¼«úáÑΓ íδßΓαÑÑ ¡áσ«ñ¿Γ∞ ¿σ. ū߬«½∞¬π C++ -
- «íΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡δ⌐ ∩ºδ¬, Γ« éδ ¼«ªÑΓÑ ß«ºñáóáΓ∞ ß«íßΓ-
- óÑ¡¡δÑ Γ¿»δ ñá¡¡δσ. ¥Γ« ¼«ªÑΓ ßñѽáΓ∞ αÑΦÑ¡¿Ñ éáΦ¿σ »α«í½Ñ¼
- í«½ÑÑ τÑΓ¬¿¼. ìá»α¿¼Ñα, αáºαáíáΓδóá∩ ß¿ßΓѼπ ¬áαΓ¿α«óá¡¿∩
- »«ú«ñδ, éδ ß«ºñáÑΓÑ Γ¿» ñá¡¡δσ »«ñ ¡áºó᡿Ѽ StormFront,
- «»¿ßδóáÑΓÑ ¡Ñ߬«½∞¬« Γᬿσ StormFront, »ÑαѼÑΘáÑΓÑ ¿σ,
- ¬«¼í¿¡¿απÑΓÑ ¿σ, ñѽáÑΓÑ ñ«ªñ½¿ó묨 ¿ Γ. ñ. ¥Γ« óδß«¬«πα«ó-
- ¡Ñó«Ñ »αÑñßΓáó½Ñ¡¿Ñ, ¡á ¬«Γ«α«¼ éδ ¼«ªÑΓÑ αÑΦáΓ∞ í«½ÑÑ ¬«¼»-
- ½Ñ¬ß¡δÑ ºáñáτ¿.
-
- C++ »«¼«ªÑΓ éá¼ ½Ñú¬« »Ñαѿ߻«½∞º«óáΓ∞ ßΓáαδ⌐ ¬«ñ (ñáªÑ
- Ñß½¿ φΓ« Γ«½∞¬« «íΩÑ¬Γ¡δÑ Σá⌐½δ íѺ ¿ßσ«ñ¡δσ ΓѬßΓ«ó). àß½¿
- éδ áßΓα«¡«¼, á ¬Γ«-Γ« «»¿ßá½ ¡Ñ¬¿⌐ Γ¿» ñá¡¡δσ, ¡áºóá¡¡δ⌐
- MassiveBody, ¬«Γ«αδ⌐ »αÑñßΓáó½∩ÑΓ ß«í«⌐ ¡Ñ ß«óßѼ Γ«, τΓ« éδ
- σ«Γ¿ΓÑ, Γ« éδ ¼«ªÑΓÑ ß¬áºáΓ∞: Asteroid - φΓ« MassiveBody
- ß ß««ΓóÑΓßΓóπεΘ¿¼¿ ¿º¼Ñ¡Ñ¡¿∩¼¿ ¿ ñ«»«½¡Ñ¡¿∩¼¿.
-
- éá¼ ñáªÑ ¡Ñ ¡áñ« »«¡¿¼áΓ∞, ¬á¬ αáí«ΓáÑΓ MassiveBody, á
- óßÑú« ½¿Φ∞ ¡áñ« º¡áΓ∞, τΓ« «¡ ñѽáÑΓ. ū߬«½∞¬π éá¼ »«ΓαÑíπ-
- ÑΓß∩ ¡á»¿ßáΓ∞ ¿ «Γ½áñ¿Γ∞ Γ«½∞¬« ¿º¼Ñ¡Ñ¡¿∩ ¿ ñ«»«½¡Ñ¡¿∩, Γ«
- ¿ αѺπ½∞ΓáΓδ éδ »«½πτ¿ΓÑ ß¬«αÑÑ.
-
- Å«½∞ºπ∩ß∞ C++, éδ «í¡áαπª¿ΓÑ, τΓ« ßΓαπ¬Γπαá ∩ºδ¬á »αá¬Γ¿-
- τÑ߬¿ «αúá¡¿ºπÑΓ éáΦ ¬«ñ (ßΓαπ¬Γπα¿απÑΓ »α«úαá¼¼π). ìáτ¿¡á⌐-
- ΓÑ ß »α«µÑßßá ß«ºñá¡¿∩ ¬á¬¿σ-Γ« τáßΓÑ⌐ éáΦÑú« »α«Ñ¬Γá
- (StormFront, Asteroid). Äñ¡áªñδ «Γ½áªÑ¡¡δÑ, «¡¿ ¼«¼Ñ¡Γá½∞-
- ¡« ¿¡ΓÑúα¿απεΓß∩ ß «ßΓá½∞¡δ¼¿ (¿ ¬«¼»¿½∩Γ«α úÑ¡Ñα¿απÑΓ
- «Φ¿í¬¿, Ñß½¿ éδ »δΓáÑΓÑß∞ ñѽáΓ∞ ß Γ¿»«¼ τΓ«-¡¿íπñ∞, ñ½∩
- τÑú« «¡ ¡Ñ »αÑñ¡áº¡áτÑ¡).
-
- ûѽ∞ C++ - »«¼«τ∞ éá¼ »α«úαá¼¼¿α«óáΓ∞ íδßΓαÑÑ, »α¿τѼ íѺ
- »«ΓÑα¿ φΣΣÑ¬Γ¿ó¡«ßΓ¿, Γ. Ñ. éδ πó¿ñ¿ΓÑ, τΓ« éáΦ¿ »α«úαá¼¼δ
- ¡á C++, ¬á¬ »αá󿽫, Γá¬¿Ñ ªÑ ¬«α«Γ¬¿Ñ ¿ íδßΓαδÑ, ¬á¬ ¿
- C-»α«úαá¼¼δ.
-
-
- âαπ»»á αáºαáí«Γτ¿¬«ó
-
- Walter Bright - óñ«σ¡«ó¿Γѽ∞ ¿ απ¬«ó«ñ¿Γѽ∞ αáí«Γδ
- Bruce Eckel - C++ ΓѬßΓδ ¿ beta-ΓÑßΓ¿α«óá¡¿Ñ
- Bjorn Freeman - Benson - Zortech LINKER (αÑñá¬Γ«α ßó∩ºÑ⌐)
- Steve Teal - Zortech HOTLINE
- Joe Huffman - ߬«α«ßΓ¡á∩ úαáΣ¿τÑ߬á∩ í¿í½¿«ΓѬá
- Nikki Locke - «¬απªÑ¡¿Ñ αÑñá¬Γ«αá ZED
- Kevin Powis - ß¿ßΓÑ¼á ¬«¡ΓѬßΓ¡« ºáó¿ß¿¼δσ »«ñ߬ẫ¬ HELP
- Dave Morton - MANUAL (Éπ¬«ó«ñßΓó«)
- Mark Welsh - Å«ñú«Γ«ó¬á απ¬«ó«ñßΓóá ¬ »ÑτáΓ¿
- Dave Mansell - (ΓÑσ¡¿τÑ߬«Ñ «íÑß»ÑτÑ¡¿Ñ)
- Tanj Bennett - LIBRARIAN (í¿í½¿«ΓѬáα∞)
-
- Bjarne Stroustrup óδαáªáÑΓß∩ «ß«íá∩ »α¿º¡áΓѽ∞¡«ßΓ∞ ºá
- ¬¡¿úπ »« C++
-
-
- æ « ñ Ñ α ª á ¡ ¿ Ñ
-
-
- ùáßΓ∞ 1: É ô è Ä é Ä ä æ Æ é Ä Å Ä ï £ ç Ä é Ç Æ à ï ƒ
-
-
- ü¢æÆÉ¢ë æÆÇÉÆ ........................................ 18
-
- èαáΓ¬« «í πßΓá¡«ó¬Ñ
- èαáΓ¬« « αÑñá¬Γ¿α«óá¡¿¿ ............................ 19
-
-
- ééàäàìêà é C++ ...................................... 21
-
- ÄíΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡«Ñ »α«úαá¼¼¿α«óá¡¿Ñ .......... 22
- ¥ΣΣÑ¬Γ¿ó¡«ßΓ∞ ................................... 23
- èαáΓ¬¿Ñ »αÑñóáα¿Γѽ∞¡δÑ ßóÑñÑ¡¿∩
- ÄíΩ∩ó½Ñ¡¿∩ ¿ «»¿ßá¡¿∩
- Åα«Γ«Γ¿»¿α«óá¡¿Ñ Σπ¡¬µ¿⌐ ........................ 24
- êß»«½∞º«óá¡¿Ñ Σá⌐½«ó ºáú«½«ó¬«ó ñ½∩ «íΩ∩ó½Ñ¡¿∩ ¬½áßß«ó
- èαáΓ¬«Ñ óóÑñÑ¡¿Ñ ó »«Γ«¬¿ ....................... 25
- è½áßßδ - «»αÑñѽѡ¿Ñ éáΦ¿σ ß«íßΓóÑ¡¡δσ Γ¿»«ó ....... 26
- Å«½¡δ⌐ »α¿¼Ñα ................................... 27
- æ«ó¼ÑßΓ¡«Ñ ¿ß»«½∞º«óá¡¿Ñ Σπ¡¬µ¿⌐
- (function overloading) ........................ 30
- æ«ó¼ÑßΓ¡«Ñ ¿ß»«½∞º«óá¡¿Ñ «»Ñαᵿ⌐
- (operator overloading) ........................ 32
- 櫺ñá¡¿Ñ ¡«ó«ú« Γ¿»á ¿º ßΓáα«ú« Γ¿»á ............... 34
- Å« «¬«¡τá¡¿¿ íẫó«ú« ¬παßá ........................ 38
- äá½∞¡Ñ⌐Φá∩ »«¼«Θ∞ ó αáí«ΓÑ
-
-
- üÄïàà æïÄåì¢ë C++ ................................... 39
-
- é맮ó Σπ¡¬µ¿⌐-τ½Ñ¡«ó
- è«¡ßΓá¡Γδ
- 諼¼Ñ¡Γáα¿¿
- î¡«ú«¬αáΓ¡δÑ ó¬½ετÑ¡¿∩ Σá⌐½«ó ºáú«½«ó¬«ó ........... 40
- Äí½áßΓ¿ ñÑ⌐ßΓó¿∩
- ÄΓ¬αδΓδÑ (inline) Σπ¡¬µ¿¿ .......................... 41
- öπ¡¬µ¿¿ ñ«ßΓπ»á
- 信ἿτÑ߬«Ñ αáß»αÑñѽѡ¿Ñ »á¼∩Γ¿ .................. 42
- è«¡ßΓαπ¬Γ«αδ ¿ ñÑßΓαπ¬Γ«αδ ......................... 43
- æß佬¿ ............................................. 44
- æ«ó¼ÑßΓ¡«Ñ ¿ß»«½∞º«óá¡¿Ñ «»Ñαᵿ⌐
- (operator overloading) ........................... 47
- Ä»Ñαᵿ∩ »α¿ßóá¿óá¡¿∩ (operator=())
- ô¬áºáΓѽ∞ ¡á void .................................. 49
- é¿αΓπá½∞¡δÑ Σπ¡¬µ¿¿
- äαπº∞∩ (friends) ................................... 51
- ÄíΘ¿Ñ, »α¿óáΓ¡δÑ, ºáΘ¿ΘÑ¡¡δÑ (Public, Private, Protected)
- æΓáΓ¿τÑ߬¿Ñ »ÑαѼѡ¡δÑ ............................. 52
- Ä»Ñαᵿ∩ αáºαÑΦÑ¡¿∩ «í½áßΓ¿ ñÑ⌐ßΓó¿∩
-
-
-
- ùáßΓ∞ 2: æ Å É Ç é Ä ù ì Ä à É ô è Ä é Ä ä æ Æ é Ä
-
-
- ÅÄäÉÄüìÄà ÉôèÄéÄ俯éÄ ÅÄ ôæÆÇìÄéèà æêæÆàî¢ ........ 53
-
- æ¿ßΓѼ¡δÑ ΓαÑí«óá¡¿∩
- ôßΓá¡«ó¬á ß¿ßΓÑ¼δ ¡á ªÑßΓ¬¿⌐ ñ¿ß¬
- ÅÑαѼѡ¡δÑ «¬απªÑ¡¿∩ ............................ 54
- 꺼ѡѡ¿Ñ ¼áαΦαπΓ«ó ¬ ¬áΓὫúá¼ (directory paths)
- ¿ »ÑαѼѡ¡δσ «¬απªÑ¡¿∩ ........................ 55
- ÅÑαѼѡ¡á∩ «¬απªÑ¡¿∩ CFLAGS ..................... 57
- ôßΓá¡«ó¬á ß¿ßΓÑ¼δ ¡á ú¿í¬¿⌐ ñ¿ß¬
-
-
- èÄìÆàèæÆìÄ çÇéêæêî¢à ÅÄäæèÇçèê (Context sensiTive HELP) 57
-
- éóÑñÑ¡¿Ñ
- è«¡Σ¿úπα¿α«óá¡¿Ñ ß¿ßΓѼδ ........................... 58
- ôßΓá¡«ó¬á ß¿ßΓѼδ .................................. 59
- çáúαπº¬á αѺ¿ñÑ¡Γ¡«ú« »«ñ߬áºτ¿¬á
- ôñá½Ñ¡¿Ñ αѺ¿ñÑ¡Γ¡«ú« »«ñ߬áºτ¿¬á
- éδº«ó »«ñ߬Ậ¿ .................................... 60
- æó«ñ¡δ⌐ ß»¿ß«¬ ¬½áó¿Φ
-
-
- ÄèÉôåàìêà ÉàäÇèÆêÉÄéÇìêƒ - ZED ....................... 61
-
- éσ«ñ ó αÑñá¬Γ«α .................................... 62
- Åα¿ó∩º¬¿ ¬½áó¿Φ .................................... 63
- öπ¡¬µ¿«¡á½∞¡δÑ ¬½áó¿Φ¿ ............................. 64
- è½áó¿Φ¿ π»αáó½Ñ¡¿∩ ¬παß«α«¼ ........................ 65
- è½áó¿Φ¿, ß«ó¼ÑßΓ¿¼δÑ ß ß¿ßΓѼ«⌐ Wordstar ........... 66
- Åα«τ¿Ñ π»αáó½∩εΘ¿Ñ ¬½áó¿Φ¿ ......................... 67
- ä«»«½¡¿Γѽ∞¡δÑ ¬½áó¿Φ¿ (¬½áó¿Φ¿ ß Alt)
- Å«ñ߬Ậ¿ ó« óαѼ∩ αáí«Γδ .......................... 70
- Ä ¼Ñ¡ε
- â½áó¡«Ñ ¼Ñ¡ε ....................................... 71
- îÑ¡ε "Σá⌐½δ" (Files) ............................... 72
- éó«ñ ¿¼Ñ¡ Σá⌐½«ó ................................ 74
- îÑ¡ε "αẼÑα" (Size) ............................ 76
- îÑ¡ε "»ÑαѼÑΘÑ¡¿Ñ ¬παß«αá" (Moves)
- îÑ¡ε "αÑñᬵ¿∩" (Edit) ............................. 78
- îÑ¡ε "αẼÑα" (Size) ............................ 81
- îÑ¡ε "í½«¬¿" (Blocks) .............................. 82
- îÑ¡ε "πñá½Ñ¡¿Ñ" (Delete) ........................... 84
- îÑ¡ε "»«¿ß¬" (Search) .............................. 85
- éó«ñ ßΓ᫬ ...................................... 86
- îÑ¡ε "»α«τÑÑ" (Other) ............................... 87
- éó«ñ ßΓ᫬ ...................................... 88
- 諼»¿½∩µ¿∩
- 諼»¿½∩µ¿∩ »α«Ñ¬Γ«ó ß ¼¡«ú¿¼¿ ¿ßσ«ñ¡δ¼¿ Σá⌐½á¼¿ 91
- ÄΓ½áñ¬á ¿ ¿ß»«½¡Ñ¡¿Ñ »α«úαá¼¼ äÄæ
- Åα«í½Ñ¼δ ß MS-DOS .................................. 92
- îÑ¡ε "ºá»¿ß∞" (Record) ¿ "¿ºó½ÑτÑ¡¿Ñ" (Playback) .... 93
- îÑ¡ε "ΓѬßΓ" (Text) ................................ 94
- ö«α¼áΓ¿α«óá¡¿Ñ ¿ áóΓ«¼áΓ¿τÑ߬á∩ óΓ∩ª¬á
- (formatting and autoindent) ................... 95
- ÅαÑñδñπΘá∩ óÑαß¿∩ Σá⌐½á ............................ 96
- æΓαπ¬Γπαá ¼Ñ¡ε
- è«¡Σ¿úπα¿α«óá¡¿Ñ ................................... 97
- ôßΓá¡«ó¬á íδßΓαδσ ¬«¼á¡ñ¡δσ ¬½áó¿Φ (Hotkeys)
- ôßΓá¡«ó¬á ¼áαΦαπΓ«ó (Files) ..................... 104
- é¿ñ φ¬αá¡á (Screen)
- ûóÑΓá φ¬αá¡á (Colors and More colors) ........... 107
- ÉẼÑΓ¬á φ¬αá¡á (Lines) ......................... 108
- Å«º¿µ¿¿ «¬«¡ .................................... 109
- ÄíαἽѡ¿Ñ «¬«¡ (Boxes)
- Éáß»ÑτáΓ¬á ¬«¡Σ¿úπα¿αᵿ¿ (Print) ............... 110
- æ«σαá¡Ñ¡¿Ñ ¬«¡Σ¿úπαᵿ¿ (saVe) ¿ óδσ«ñ (eXit)
- öá⌐½ »«ñ߬ẫ¬
-
-
- èÄîÅêïƒÆÄÉ ZORTECH ................................... 111
-
- Äíº«α »α«µÑßßá ¬«¼»¿½∩µ¿¿
-
- ZTC1.EXE, ZTC1B.EXE ¿ ZTCPP1.EXE ................ 112
- 諼á¡ñ¡á∩ ßΓ᫬á
- éσ«ñ¡«⌐ Σá⌐½ ................................. 113
- è½ετ¿
- ÅÑαѼѡ¡δÑ «¬απªÑ¡¿∩ ......................... 117
- ZTG.EXE
- 諼á¡ñ¡á∩ ßΓ᫬á
- Åα«τ¿Ñ ¬½ετ¿ ................................. 118
- ZTC2.EXE ¿ ZTC2B.EXE ............................ 119
- éσ«ñ¡«⌐ Σá⌐½
- è½ετ¿
- 諼á¡ñá ZTC ..................................... 120
- ÅÑαѼѡ¡δÑ «¬απªÑ¡¿∩ ......................... 122
-
-
- æÅÉÇéÄùìêè ÅÄ C++ ................................... 123
-
- 諼¼Ñ¡Γáα¿¿
- êñÑ¡Γ¿Σ¿¬áΓ«αδ
- è½ετÑóδÑ ß½«óá
- è«¡Σ½¿¬Γδ ß í¿í½¿«ΓÑτ¡δ¼¿ ¿¼Ñ¡á¼¿
- ï¿ΓÑα¡δÑ ¬«¡ßΓá¡Γδ ................................. 124
- Æ¿»δ ............................................... 125
- K«¡ßΓá¡Γδ ¿ ¡Ñ∩ó¡« ¿º¼Ñ¡∩εΘ¿Ñß∩ »ÑαѼѡ¡δÑ
- (const ¿ volatile)
- B¡ÑΦ¡¿Ñ ¿ ú½«íá½∞¡δÑ »ÑαѼѡ¡δÑ .................... 126
- éδαáó¡¿óá¡¿Ñ ñá¡¡δσ ................................ 127
- Åáαá¼ÑΓαδ Σπ¡¬µ¿⌐
- ô¬áºáΓѽ¿ .......................................... 128
- ê¡¿µ¿á½¿ºáµ¿∩
- Ä»Ñαᵿ¿ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐
- ÅαÑ»α«µÑßß«α ....................................... 129
- îá¬α«ßδ
- ÅαÑñ«»αÑñѽѡ¡δÑ ¼á¬α«ßδ ........................... 130
- 鬽ετáѼδÑ Σá⌐½δ ................................... 131
- Åα«τ¿Ñ ñ¿αÑ¬Γ¿óδ »αÑ»α«µÑßß«αá
- Äúαá¡¿τÑ¡¿∩ ........................................ 132
- Åα«Γ«Γ¿»¿α«óá¡¿Ñ Σπ¡¬µ¿⌐
- ê¡ñπµ¿α«óá¡¡«Ñ »α«Γ«Γ¿»«¼ »α¿óÑñÑ¡¿Ñ (cast) ..... 134
- Åα«Γ«Γ¿»¿α«óá¡¿Ñ - char ¿ float
- ÇóΓ«»α«Γ«Γ¿»¿α«óá¡¿Ñ
- æ«ó¼ÑßΓ¿¼«ßΓ∞ ß C .................................. 135
- Ä»αÑñѽѡ¡δÑ »«½∞º«óáΓѽѼ »α¿óÑñÑ¡¿∩ Γ¿»«ó ........ 136
- æ«ó¼ÑßΓ¿¼«ßΓ∞ ß C++ Σ¿α¼δ AT&T
- çá¼Ñτá¡¿∩, «Φ¿í¬¿, »αÑñπ»αѪñÑ¡¿∩ »α¿ »α«úαá¼¼¿α«-
- óá¡¿¿ ¡á C++ ..................................... 137
- æ«ó¼ÑßΓ¡«Ñ ¿ß»«½∞º«óá¡¿Ñ ¼«ñπ½Ñ⌐ ¡á C ¿ C++ ........ 138
- Éạ«Ñ .......................................... 139
-
-
-
- ÅÉÄâÉÇîî¢ ÉàäÇèÆêÉÄéÇìêƒ æéƒçàë ..................... 141
-
- BLINK.EXE
- Éáí«Γá ß ZTC .................................... 142
- êß»«½∞º«óá¡¿Ñ
- è½ετ¿
- ÅÑαѼѡ¡δÑ «¬απªÑ¡¿∩ ........................... 143
- Éẽ¿τ¿∩ ¼Ñªñπ BLINK ¿ MS-LINK ................. 144
-
- BUNCH.EXE ......................................... 145
- ìạáτÑ¡¿Ñ
- Éáí«Γá ß ZTC
- êß»«½∞º«óá¡¿Ñ
- .COM-Σá⌐½δ ..................................... 146
- ÅÑαѼѡ¡δÑ «¬απªÑ¡¿∩
- Åα¿¼Ñα
- ÄΦ¿í¬¿
- EXE2BIN.COM
- ûѽ«τ¿ß½Ñ¡¡δÑ »α«úαá¼¼δ ............................ 147
- 櫺ñá¡¿Ñ .COM-»α«úαá¼¼
-
-
- êæÅÄïìàìêà ÅÉÄâÉÇîî .................................. 148
-
- ÉáßΦ¿αÑ¡¿Ñ ¬«¼á¡ñ¡«⌐ ßΓ᫬¿ áαúπ¼Ñ¡Γ«ó ............. 149
- ô»αáó½Ñ¡¿Ñ αẼÑα«¼ ßΓѬá .......................... 150
-
-
- âïÄüÇï£ì¢ë ÄÅÆêîêçÇÆÄÉ ............................... 151
-
- éóÑñÑ¡¿Ñ
- ùΓ« Γá¬«Ñ ú½«íá½∞¡á∩ «»Γ¿¼¿ºáµ¿∩
- çáτѼ φΓ« ¡πª¡«
- è«úñá ¼¡Ñ ¿ß»«½∞º«óáΓ∞ Ñú«
- èᬫú« π½πτΦÑ¡¿∩ ߬«α«ßΓ¿ ¼«ª¡« ¼¡Ñ «ª¿ñáΓ∞ ..... 152
- äѽáÑΓ ½¿ ⽫íá½∞¡δ⌐ «»Γ¿¼¿ºáΓ«α ¡Ñ¡πª¡δ¼ »α«úαá¼-
- ¼¿α«óá¡¿Ñ ¡á áßßѼí½ÑαÑ
- ùÑú« ¡Ñ π¼ÑÑΓ â½«íá½∞¡δ⌐ «»Γ¿¼¿ºáΓ«α
-
- êß»«½∞º«óá¡¿Ñ ...................................... 153
- çá»π߬ «»Γ¿¼¿ºáΓ«αá »«ßαÑñßΓó«¼ ZTC
- ÇóΓ«¡«¼¡δ⌐ ºá»π߬
- äαπú¿Ñ αѪ¿¼δ ................................... 154
-
- äá½∞¡Ñ⌐Φá∩ ¿¡Σ«α¼áµ¿∩ .............................. 155
- Éáß»α«ßΓαá¡Ñ¡¿Ñ ¬«¡ßΓá¡Γ (+cnp)
- Éáß»α«ßΓαá¡Ñ¡¿Ñ ¬«»¿⌐ (+cp)
- ôñá½Ñ¡¿Ñ ¿º½¿Φ¡¿σ »α¿ßóá¿óá¡¿⌐ (+da) ............ 156
- ôñá½Ñ¡¿Ñ ¡Ñ¿ß»«½¡∩Ѽ«ú« ¬«ñá (+dc)
- ôñá½Ñ¡¿Ñ ¿º½¿Φ¡¿σ »ÑαѼѡ¡δσ,
- óδτ¿ß½Ñ¡¿Ñ úαá¡¿µ ßπΘÑßΓó«óá¡¿∩,
- αáß»αÑñѽѡ¿Ñ αÑú¿ßΓα«ó »α¿ »«¼«Θ¿ αá߬αá߬¿ (+dv)
- ⽫íá½∞¡δÑ «íΘ¿Ñ »«ñóδαáªÑ¡¿∩ (+gcse) ........... 157
- éδ¡ÑßÑ¡¿Ñ ¿¡óáα¿á¡Γ«ó ¿º µ¿¬½á (+li)
- ê¡ñπ¬Γ¿ó¡δÑ »ÑαѼѡ¡δÑ µ¿¬½á (+liv)
- êΓÑαᵿ∩ ñ« «ΓßπΓßΓó¿∩ ñá½∞¡Ñ⌐Φ¿σ «»Γ¿¼¿ºáµ¿⌐(+loop)
- éδ»«½¡∩Γ∞ ¡áΦÑ αáß»αÑñѽѡ¿Ñ αÑú¿ßΓα«ó (+reg)
- æ««Γ¡«ΦÑ¡¿Ñ ¼Ñªñπ »á¼∩Γ∞ε ¿ ߬«α«ßΓ∞ε
- (+space ¿ +time)
- ÄτÑ¡∞ ¡áúαπªÑ¡¡δÑ óδαáªÑ¡¿∩ (+vbe) .............. 159
-
- æ«óÑΓδ ¿ ºá¼Ñτá¡¿∩
- êß»«½∞º«óá¡¿Ñ ¬½ετÑóδσ ß½«ó const ¿ volatile
- àß½¿ 󫺡¿¬½¿ »α«í½Ñ¼δ .......................... 160
-
-
- æïÄåì¢à ùàÉÆ¢ æêæÆàî¢ ............................... 161
-
- î«ñѽ¿ »á¼∩Γ¿
- æÑú¼Ñ¡Γ¡á∩ áασ¿ΓѬΓπαá 8088/8086
- Å∩Γ∞ αẽ¿τ¡δσ ¼«ñѽÑ⌐ [»á¼∩Γ¿] ................. 162
- éδí«α ¼«ñѽ¿ »á¼∩Γ¿
- ô¬áºáΓѽ¿ .......................................... 163
- ü½¿ª¡¿Ñ π¬áºáΓѽ¿
- äá½∞¡¿Ñ π¬áºáΓѽ¿
- îá¬α«ßδ ñ½∩ αáí«Γδ ß ñá½∞¡¿¼¿ π¬áºáΓѽ∩¼¿ ....... 164
- ì«α¼á½¿ºáµ¿∩ ñá½∞¡¿σ π¬áºáΓѽÑ⌐
- Çα¿Σ¼ÑΓ¿¬á ¡áñ ñá½∞¡¿¼¿ π¬áºáΓѽ∩¼¿ ............. 165
- êß»«½∞º«óá¡¿Ñ ¬½ετÑóδσ ß½«ó near ¿ far ............. 166
- êß»«½∞º«óá¡¿Ñ í½¿ª¡¿σ π¬áºáΓѽÑ⌐ ................ 167
- êß»«½∞º«óá¡¿Ñ ñá½∞¡¿σ π¬áºáΓѽÑ⌐
- ÅαÑ«íαẫóá¡¿∩ ¼Ñªñπ í½¿ª¡¿¼¿ ¿ ñá½∞¡¿¼¿ π¬áºáΓѽ∩¼¿
- Å«ñáó½Ñ¡¿Ñ óδαáó¡¿óá¡¿∩ ó ßΓαπ¬Γπαáσ ............... 168
- ÄΓ½áñ¬á C++ »α«úαá¼¼ ............................... 169
- êß»«½∞º«óá¡¿Ñ «Γ½áñτ¿¬«ó
- äαπúá∩ »«ññÑ᪬á
- ÄΓ½áñ¬á ß CodeView ............................... 170
-
-
- êìæÆÉôîàìÆÇÉêë ........................................ 171
-
- MAKE
- ùΓ« Γá¬«Ñ MAKE
- ìáτὫ αáí«Γδ ß MAKE
- 諼á¡ñ¡δ⌐ Σá⌐½ ñ½∩ MAKE (MAKEFILE) .............. 172
- Åα¿¼Ñα MAKEFILE
- öá⌐½δ ºáó¿ß¿¼«ßΓ¿ ............................... 173
- éΓ«α«⌐ »α¿¼Ñα
- MAKEFILE »α¿ ¡Ñ߬«½∞¬¿σ ¿ßσ«ñ¡δσ Σá⌐½áσ
- çá»π߬ MAKE ..................................... 174
- êß»«½∞º«óá¡¿Ñ áαúπ¼Ñ¡Γ«ó MAKE ................... 175
- Ä»αÑñѽѡ¡δÑ »«½∞º«óáΓѽѼ ¼á¬α«ßδ .............. 176
- ÅαÑñ«»αÑñѽѡ¡δÑ ¼á¬α«ßδ
- ÉѪ¿¼δ ¿ß»«½¡Ñ¡¿∩ »αáó¿½ ........................ 177
- é¡πΓαÑ¡¡¿Ñ ¬«¼á¡ñδ MS DOS
- æ»Ñµ¿á½∞¡δÑ µÑ½¿ ................................ 178
- ÅÑαÑ¡á»αáó½Ñ¡¿Ñ óδó«ñá
- ìÑ∩ó¡δÑ »αáó¿½á
- 櫺ñá¡¿Ñ ¬«¼á¡ñ¡δσ Σá⌐½«ó ñ½∩ αÑñá¬Γ«αá ßó∩ºÑ⌐ ... 179
- 滿߫¬ «Γ½¿τ¿⌐ «Γ MAKE ß¿ßΓѼδ ₧¡¿¬ß ............ 180
- TOUCH
- OBJTOASM ........................................... 181
- êß»«½∞º«óá¡¿Ñ
-
-
- êìÆàÉöàëæ æ ÇææàîüïàÉÄî ............................. 182
-
- Åα«úαá¼¼¡δÑ αáºñѽδ
- T-¼«ñѽ∞ »á¼∩Γ¿ (.COM »α«úαá¼¼δ)
- S-¼«ñѽ∞ »á¼∩Γ¿ ................................. 183
- M-¼«ñѽ∞ »á¼∩Γ¿ ................................. 184
- C-¼«ñѽ∞ »á¼∩Γ¿ ................................. 185
- L-¼«ñѽ∞ »á¼∩Γ¿ ................................. 186
- ÄíΘÑÑ αẼÑΘÑ¡¿Ñ ................................... 188
- æí«α¬á »«ñ»α«úαá¼¼
- Äí½áßΓ∞ ßΓѬá ...................................... 189
- 髺óαáΘáѼδÑ Σπ¡¬µ¿∩¼¿ º¡áτÑ¡¿∩
- êß»«½∞º«óá¡¿Ñ αÑú¿ßΓα«ó ............................ 190
- éδαáó¡¿óá¡¿Ñ ñá¡¡δσ
- îá¬α«ßδ ¿º MACROS.ASM
- Åα«ßΓ«⌐ »α¿¼Ñα ñ½∩ S-¼«ñѽ¿ ........................ 191
- æ½ÑñπεΘ¿⌐ »α¿¼Ñα ................................... 193
- çá»π߬ MASM ........................................ 195
-
-
-
-
-
- ùáßΓ∞ 3: ü ê ü ï ê Ä Æ à è Ç ö ô ì è û ê ë
-
-
-
- üêüïêÄÆàèÇ öôìèûêë ................................... 196
-
- Äí¼Ñ¡ ß Σá⌐½á¼¿ .................................... 197
- é¿ñδ Σá⌐½«ó
- éδß«¬¿⌐ ¿ ¡¿º¬¿⌐ πα«ó¡¿ «í¼Ñ¡á ß Σá⌐½á¼¿
- Éáß»αÑñѽѡ¿Ñ »á¼∩Γ¿ ............................... 198
- èπτá (heap)
- æΓѬ ............................................ 199
- ⽫íá½∞¡δÑ »ÑαѼѡ¡δÑ .............................. 200
- _8087
- _okbigbuf ....................................... 204
- _osmajor ........................................ 205
- _osminor
- _psp
- errno
-
-
- æÄÄüÖàìêƒ Äü ÄÿêüèÇò ................................ 206
-
- ÄΦ¿í¬¿ äÄæ
- ÄΦ¿í¬¿ ¼áΓѼáΓ¿τÑ߬¿σ Σπ¡¬µ¿⌐ ...................... 207
-
-
-
- öÇëï¢ çÇâÄïÄéèê ...................................... 207
-
- assert.h
- conio.h ............................................ 208
- ctype.h
- direct.h
- disp.h
- dos.h
- fg.h ............................................... 209
- errno.h ............................................ 211
- int.h
- io.h
- limits.h
- math.h
- msmouse.h .......................................... 212
- process.h
- setjmp.h
- signal.h
- sound.h
- stdarg.h
- stddef.h ........................................... 213
- stdio.h
- stdlib.h
- string.h ........................................... 214
- sys\stat.h
- time.h
-
-
- üêüïêÄÆàùì¢à öôìèûêê ................................. 215
-
- abort - æüÉÄæêÆ£ é¢ÅÄïìàìêà ÅÉÄâÉÇîî¢ ............. 216
- abs - ÇüæÄï₧ÆìÄà çìÇùàìêà ûàïÄâÄ ................. 217
- acos - ÇÉèèÄæêìôæ ................................ 217
- asctime - äÇÆ£ éÉàîƒ ............................. 218
- asin - ÇÉèæêìôæ .................................. 219
- assert - ÅÉÄéàÉêÆ£ ôÆéàÉåäàìêà .................. 220
- atan, atan2 - ÇÉèÆÇìâàìæ ......................... 221
- atof, atoi, atol - ÅÉàÄüÉÇçÄéÇÆ£ é ÅïÇéÇ₧Öàà,
- ÅÉàÄüÉÇçÄéÇÆ£ é ûàïÄà,
- ÅÉàÄüÉÇçÄéÇÆ£ é äïêììÄà ........ 222
- bdos, bdosx - é¢çéÇÆ£ öôìèûê₧ DOS ................ 222
- bioskey, _bios_keybrd - ÉÇüÄÆÇ æ èïÇéêÇÆôÉÄë ..... 223
- bsearch - äéÄêùì¢ë ÅÄêæè é îÇææêéà ................ 225
- calloc - äÇÆ£ ÅÇîƒÆ£ ............................. 226
- ceil - ûàïǃ éàÉò샃 âÉÇì£ ....................... 227
- chdir - æîàìêÆ£ ÆàèôÖêë èÇÆÇïÄâ .................. 227
- _chkstack - ÅÉÄéàÉêÆ£ æÆàè ........................ 228
- clearerr - æüÉÄæêÆ£ öïÇâ Äÿêüèê ................... 229
- clock - ÄÅÉàäàïêÆ£ ÅÉÄûàææÄÉìÄà éÉàîƒ ............. 230
- close - çÇèɢƣ öÇëï .............................. 230
- cos, cosh - èÄæêìôæ, èÄæêìôæ âêÅàÉüÄïêùàæèêë ..... 231
- creat - æÄçäÇÆ£ öÇëï .............................. 232
- ctime - äÇÆ£ èÇïàìäÇÉìÄà éÉàîƒ ................... 233
- difftime - ÄÅÉàäàïêÆ£ ÄÆÉàçÄè éÉàîàìê ............ 234
- Display Package - Åá¬ÑΓ «Γ«íαáªÑ¡¿∩ .............. 235
- div - äàïêÆ£ ..................................... 239
- DOS Package - Åá¬ÑΓ Σπ¡¬µ¿⌐ DOS .................. 240
- ecvt - ÅÉàÄüÉÇçÄéÇÆ£ ùêæïÄ é æÆÉÄèô .............. 242
- execl - execvp - çÇÅôæÆêÆ£ ÅÉÄûàææ ................ 243
- exit, _exit - çÇéàÉÿêÆ£ é¢ÅÄïìàìêà ÅÉÄâÉÇîî¢ ...... 245
- exp - ¥èæÅÄìàìÆÇ ................................. 246
- fabs - ÇüæÄï₧ÆìÄà çìÇùàìêà éàÖàæÆéàììÄâÄ ......... 247
- farcalloc - farrealloc - ÉÇüÄÆÇ æ äÇï£ìàë èôùàë ... 248
- _farptr_norm, _farptr_fromlong, _farptr_tolong -
- ìÄÉîÇïêçÄéÇÆ£ äÇï£ìêë ôèÇçÇÆàï£,
- äÇï£ìêë ôèÇçÇÆàï£ êç äïêììÄâÄ,
- äÇï£ìêë ôèÇçÇÆàï£ é äïêììÄà ...... 249
- fclose - çÇèɢƣ öÇëï ............................ 250
- fcvt - ÅÉàÄüÉÇçÄéÇÆ£ DOUBLE é æÆÉÄèô æ öêèæêÉÄ-
- éÇììÄë ÆÄùèÄë ............................. 251
- feof - ÅÉÄéàÉèÇ ÅÉêçìÇèÇ èÄìûÇ öÇëïÇ ............. 252
- ferror - ÅÉÄéàÉèÇ ÅÉêçìÇèÇ Äÿêüèê é öÇëïà .......... 253
- fflush - 颯ÄïèìôÆ£ üôöàÉ öÇëïÇ .................. 254
- fgetc - éçƒÆ£ üÇëÆ êç öÇëïÇ ...................... 254
- fgets - éçƒÆ£ æÆÉÄèô êç öÇëïÇ .................... 255
- fileno - äÇÆ£ äàæèÉêÅÆÄÉ öÇëïÇ .................... 256
- filesize - äÇÆ£ ÉÇçîàÉ öÇëïÇ ...................... 257
- findfirst, findnext - ÅÄêæè öÇëïÄé ÅÄ ÿÇüïÄìô ....... 257
- floor - ûàïǃ ùÇæÆ£ .............................. 259
- flushall - 颯ÄïèìôÆ£ üôöàÉÇ éæàò ÄÆèɢƢò öÇëïÄé 259
- fmod - ÄæÆÇÆÄè ÄÆ äàïàìêƒ äéôò ùêæàï .............. 260
- fopen - ÄÆèɢƣ öÇëï ............................. 261
- FP_OFF, FP_SEG - æàâîàìÆ, æîàÖàìêà ............... 262
- fprintf - öÄÉîÇÆì¢ë é¢éÄä é öÇëï ................. 263
- fputc - çÇÅêæ£ üÇëÆÇ é öÇëï ...................... 263
- fputs - çÇÅêæ£ æÆÉÄèê é öÇëï ..................... 264
- fread - ùêÆÇÆ£ êç öÇëïÇ .......................... 265
- free - ÄæéÄüÄäêÆ£ ÅÇîƒÆ£ ......................... 266
- freopen - ÄÆèɢƣ öÇëï ÅÄéÆÄÉìÄ .................. 266
- frexp - ¥èæÅÄìàìûêÇï£ìÄà ÅÉà俯Çéïàìêà ........... 267
- fscanf - öÄÉîÇÆì¢ë ééÄä êç öÇëïÇ ................. 268
- fseek - ÅÄçêûêÄìêÉÄéÇÆ£ öÇëï ..................... 269
- fstat - éçƒÆ£ æÆÇÆôæ öÇëïÇ ....................... 270
- ftell - äÇÆ£ ÅÄçêûê₧ é öÇëïà ..................... 271
- fwrite - ÅêæÇÆ£ é öÇëï ........................... 272
- getc, getchar, getche, getch - éçƒÆ£ üÇëÆ êç öÇëïÇ 273
- getcwd - äÇÆ£ ÆàèôÖêë èÇÆÇïÄâ .................... 274
- getDS - éçƒÆ£ çìÇùàìêà ÉàâêæÆÉÇ DS ................ 275
- getenv - äÇÆ£ ÄèÉôåàìêà .......................... 275
- gets - ééÄä æÆÉÄèê ............................... 276
- hypot - âêÅÄÆàìôçÇ ............................... 277
- index - ìÇëÆê ïêÆàÉô é æÆÉÄèà .................... 277
- inp, inpw - ééÄä êç ÅÄÉÆÇ ........................ 278
- Interrupt Package - Åá¬ÑΓ αáí«Γδ ß »αÑαδóá¡¿∩¼¿ ... 279
- int86, int86x - ÅÉÄâÉÇîîìÄà ÅÉàÉ¢éÇìêà ........... 282
- intdos, intdosx - æêæÆàîì¢ë é¢çÄé öôìèûêê DOS .... 283
- isatty - ÄÅÉàäàïêÆ£ ÆêÅ ÅÄÆÄèÇ ................... 284
- is package - Åá¬ÑΓ ¬½áßß¿Σ¿¬áµ¿¿ ½¿ΓÑα ........... 285
- itoa - ÅÉà俯Çéïàìêà ûàïÄâÄ ...................... 287
- kbhit - ÅÉÄéàÉèÇ ééÄäÇ æ èïÇéêÇÆôÉ¢ .............. 288
- labs - ÇüæÄï₧ÆìÄà çìÇùàìêà äïêììÄâÄ .............. 288
- ldexp - ¥èæÅÄìàìÆÇ ............................... 289
- ldiv - äàïàìêà ùêæàï ÆêÅÇ long .................... 290
- localtime - äÇÆ£ îàæÆìÄà éÉàîƒ ................... 291
- log, log10 - ïÄâÇÉêöî ............................ 292
- longjmp - äïêìì¢ë ÅàÉàòÄä ........................ 292
- lseek - êçîàìêÆ£ ÅÄçêûê₧ é öÇëïà ................. 294
- malloc - ÄÆéàæÆê ÅÇîƒÆ£ .......................... 295
- matherr - ÄüÉÇüÄÆèÇ Äÿêüèê îÇÆàîÇÆêùàæèÄë öôìèûêê 296
- memchr - memset - ÉÇüÄÆÇ æ üÇëÆÇîê é îÇææêéÇò ..... 296
- mkdir - æÄçäÇÆ£ èÇÆÇïÄâ .......................... 298
- MK_FP - æÄçäÇÆ£ äÇï£ìêë ôèÇçÇÆàï£ ................ 299
- mktime - ÅÉàÄüÉÇçÄéÇÆ£ éÉàîƒ ..................... 299
- modf - äÉÄüìǃ ê ûàïǃ ùÇæÆ£ ùêæïÇ ................ 300
- Mouse Package - Åá¬ÑΓ αáí«Γδ ß ¼δΦ∞ε ............. 301
- open - ÄÆèɢƣ öÇëï ............................... 302
- outp, outpw - é¢éÄä é ÅÄÉÆ ....................... 304
- peek - ÅàÉàæïÇÆ£ üôöàÉ êçäÇïàèÇ .................. 305
- perror - é¢äÇÆ£ æÄÄüÖàìêà Äü Äÿêüèà .............. 306
- poke - ÅàÉàæïÇÆ£ üôöàÉ äÇïàèÄ .................... 307
- poly - ÅÄïêìÄî ................................... 308
- pow - æÆàÅàì£ .................................... 309
- printf, fprintf, sprintf - öÄÉîÇÆì¢ë é¢éÄä ........ 309
- putc, putchar - é¢éÄä ïêÆàÉ¢ é öÇëï ............... 313
- puts - é¢éÄä æÆÉÄèê é öÇëï ........................ 314
- qsort - ü¢æÆÉǃ æÄÉÆêÉÄéèÇ ÆÇüïêû¢ ................ 315
- raise - éÄçüôäêÆ£ æêâìÇï ......................... 316
- rand - æïôùÇëìǃ éàïêùêìÇ ........................ 317
- read - ùêÆÇÆ£ üïÄè êç öÇëïÇ ....................... 317
- realloc - ÅàÉàÉÇçîàæÆêÆ£ üïÄè ÅÇîƒÆê .............. 318
- rename - ÅàÉàêîàìÄéÇÆ£ öÇëï ....................... 319
- rewind - ôæÆÇìÄéêÆ£ é ìÇùÇïÄ ôèÇçÇÆàï£ öÇëïÇ ..... 320
- rmdir - ôäÇïêÆ£ èÇÆÇïÄâ .......................... 321
- sbrk - ôéàïêùêÆ£ æàâîàìÆ äÇìì¢ò .................. 322
- scanf - öÄÉîÇÆì¢ë ééÄä ........................... 323
- segread - ùêÆÇÆ£ æàâîàìÆì¢à ÉàâêæÆÉ¢ ............. 326
- setbuf - ôæÆÇìÄéêÆ£ üôöàÉ é/é .................... 327
- setjmp - ôæÆÇìÄéêÆ£ ÆÄùèô äïêììÄâÄ ÅàÉàòÄäÇ ...... 328
- setvbuf - ôæÆÇìÄéêÆ£ üôöàÉ é/é ................... 328
- signal - ôæÆÇìÄéêÆ£ ÉàÇèûê₧ ìÇ æêâìÇï ........... 330
- sin, sinh - æêìôæ, æêìôæ âêÅàÉüÄïêùàæèêë ......... 332
- Sound Package - Åá¬ÑΓ αáí«Γδ ß« ºóπ¬«¼ ........... 332
- spawn - æÄçäÇÆ£ ÅÉÄûàææ .......................... 333
- sprintf - öÄÉîÇÆì¢ë é¢éÄä é üôöàÉ ................ 334
- sqrt - èéÇäÉÇÆì¢ë èÄÉàì£ ......................... 335
- srand - êìêûêÇïêçÇûêƒ æïôùÇëìÄë éàïêùêì¢ ......... 335
- sscanf - öÄÉîÇÆì¢ë ééÄä é üôöàÉ .................. 336
- stat - ùêÆÇÆ£ æÆÇÆôæ öÇëïÇ ....................... 337
- strcat - strdur - Éáí«Γá ß« ßΓα«¬á¼¿ ............. 338
- strerror - ÅÄïôùêÆ£ êìöÄÉîÇûê₧ Äü Äÿêüèà .......... 339
- strlen - äÇÆ£ äïêìô æÆÉÄèê ........................ 340
- strlwr - ÅÉêéàæÆê è ìêåìàîô ÉàâêæÆÉô ............. 341
- strncat - strpbrk - Éáí«Γá ß« ßΓα«¬á¼¿ ........... 341
- strrchr - strset - Éáí«Γá ß« ßΓα«¬á¼¿ ............ 343
- strspn - äÇÆ£ äïêìô æÄéÅÇäÇ₧Öàë ÅÄ俯ÉÄèê ........ 344
- strstr - ìÇëÆê ÅÄ俯ÉÄèô ......................... 344
- strtod - strtoul - ÅÉàÄüÉÇçÄéÇÆ£ êç Ç/û éêäÇ ..... 345
- strupr - ÅÉêéàæÆê è éàÉòìàîô ÉàâêæÆÉô ............ 347
- swab - ÅÄÅÇÉìÄ ÅÄîàìƒÆ£ üÇëÆ¢ .................... 348
- system - ÄüÉÇÖàìêà è DOS ......................... 348
- tan, tanh - ÆÇìâàìæ, ÆÇìâàìæ âêÅàÉüÄïêùàæèêë ..... 349
- time - äÇÆ£ éÉàîƒ ................................ 350
- toascii, tolower, toupper - é ASCII, é ìêåìêë,
- é éàÉòìêë ............ 351
- ungetc - éÄçéÉÇÆêÆ£ ïêÆàÉô ........................ 352
- unlink - ôäÇïêÆ£ öÇëï ............................ 353
- utime - êçîàìêÆ£ éÉàîƒ îÄäêöêèÇûêê öÇëïÇ ......... 353
- va_arg - va_start - ÉÇüÄÆÇ æ ÅàÉàîàìì¢î ùêæïÄî
- ÅÇÉÇîàÆÉÄé ................... 354
- vfprintf, vprintf, vsprintf - öÄÉîÇÆì¢ë é¢éÄä ..... 355
- write - ÅêæÇÆ£ é öÇëï ............................. 356
-
-
-
- ééàäàìêà é ü¢æÆÉô₧ âÉÇöêèô ......................... 358
-
-
- Ä»αÑñѽѡ¿Ñ íẫó«⌐ ¬««αñ¿¡áΓ¡«⌐ ß¿ßΓѼδ
- Æ¿»δ »ÑαѼѡ¡δσ
- è«¡ßΓá¡Γδ FG ....................................... 359
- Çñá»ΓÑαδ úαáΣ¿τÑ߬«ú« ñ¿ß»½Ñ∩
- ä«ßΓπ» ¬ ¬««αñ¿¡áΓá¼ αἫ¬ ¿ ½¿¡¿⌐ ................. 360
- îá߬¿ .............................................. 361
- çỿß∞ αѪ¿¼«ó
- Æ¿»δ ½¿¡¿⌐
- ä«ßΓπ»¡δÑ µóÑΓá .................................... 362
-
-
-
- ÄüÖêà ÅàÉàîàìì¢à ..................................... 363
-
- fg_displaybox (èÄÄÉäêìÇÆ¢ ÉÇîèê äêæÅïàƒ)
- fg_charbox (èÄÄÉäêìÇÆ¢ ÉÇîèê ïêÆàÉ¢)
- fg_ncolormap (ÉÇçîàÉ ÅÇïêÆÉ¢)
- fg_nsimulcolor (ùêæïÄ ûéàÆÄé) ..................... 364
- fg_pixelx, fg_pixely (ÉÇçîàÉ¢ Åêèæàïƒ)
- fg_numpages (ùêæïÄ æÆÉÇìêû)
- fg_display (ÆêÅ ÇäÇÅÆàÉÇ)
- fg_activepage (ìÄîàÉ ÇèÆêéìÄë æÆÉÇìêû¢) ........... 365
- fg_displaypage (ìÄîàÉ ÄÆÄüÉÇåÇàîÄë æÆÉÇìêû¢)
-
-
- öôìèûêê, ÅÄæÆÇéïƒàî¢à ÅÄï£çÄéÇÆàïàî öÇèôï£ÆÇÆêéìÄ ...... 365
-
- _assert - ôÆéàÉåäàìêà
- fg_lineclip - èïêÅÅêÉÄéÇìêà ïêìêê ................ 366
-
-
- ÄüÖêà öôìèûêê ü¢æÆÉÄë âÉÇöêèê ...................... 366
-
- fg_adjustxy - æèÄÉÉàèÆêÉÄéÇÆ£ ÆàèôÖêà èÄÄÉäêìÇÆ¢ 366
- fg_blit - ÅàÉàîàæÆêÆ£ ÉÇîèô ...................... 367
- fg_box_cpy - æèÄÅêÉÄéÇÆ£ ÉÇîèô ................... 368
- fg_drawarc - ìÇÉêæÄéÇÆ£ äôâô ..................... 368
- fg_drawbox - ìÇÉêæÄéÇÆ£ ÅɃîÄôâÄï£ìêè ............ 369
- fg_drawdot - ìÇÉêæÄéÇÆ£ ÆÄùèô .................... 370
- fg_drawellipse - ìÇÉêæÄéÇÆ£ ¥ïïêÅæ ............... 370
- fg_drawline fg_drawlinep - ìÇÉêæÄéÇÆ£ ïêìê₧ ...... 371
- fg_drawlineclip - ÄÆèïêÅÅêÉÄéÇÆ£ ê ìÇÉêæÄéÇÆ£ ïêìê₧ 372
- fg_drawmatrix - ìÇÉêæÄéÇÆ£ îÇÆÉêûô ............... 372
- fg_drawthickline - ìÇÉêæÄéÇÆ£ ÆÄïæÆô₧ ïêìê₧ ...... 373
- fg_fillbox - çÇÅÄïìêÆ£ ÅɃîÄôâÄï£ìêè ............. 374
- fg_flush - 颯ÄïèìôÆ£ ìÇ äêæÅïàë ................. 374
- fg_getcolormap - ùêÆÇÆ£ ÅÇïêÆÉô (èÇÉÆô ûéàÆÄé) .... 371
- fg_init - êìêûêÇïêçêÉÄéÇÆ£ ü¢æÆÉô₧ âÉÇöêèô ....... 375
- fg_init_null - fg_init_vga12 - êìêûêÇïêçêÉÄéÇÆ£ FG 376
- fg_line_cpy - èÄÅêÉÄéÇÆ£ ïêìê₧ ................... 377
- fg_putc - é¢éàæÆê ïêÆàÉô ......................... 377
- fg_puts - é¢éàæÆê æÆÉÄèô ......................... 378
- fg_readbox - ùêÆÇÆ£ ÉÇîèô ........................ 378
- fg_readdot - ùêÆÇÆ£ ÆÄùèô ........................ 379
- fg_restore - éÄææÆÇìÄéêÆ£ ........................ 380
- fg_save - æÄòÉÇìêÆ£ .............................. 380
- fg_setactivepage - ôæÆÇìÄéêÆ£ ÇèÆêéìô₧ æÆÉÇìêûô ... 381
- fg_setcolormap - ôæÆÇìÄéêÆ£ ÅÇïêÆÉô .............. 381
- fg_setdisplaypage - ôæÆÇìÄéêÆ£ äêæÅïàëìô₧ æÆÉÇìêûô 382
- fg_setlinepattern ôæÆÇìÄéêÆ£ ÿÇüïÄì ïêìêê ......... 382
- fg_term - ÅàÉàëÆê é Éàåêî Ç/û ÆàÉîêìÇïÇ .......... 383
- fg_writebox - ÅêæÇÆ£ ÉÇîèô ....................... 383
-
-
- Å É ê ï Ä å à ì ê ƒ
-
-
- ÅÉêïÄåàìêà 1: Zorlib - ü¿í½¿«ΓѬáα∞ ................ 384
-
- ü¿í½¿«ΓѬáα∞ Zortech
- ùΓ« Γá¬«Ñ í¿í½¿«ΓѬáα∞
- êß»«½∞º«óá¡¿Ñ Zorlib ............................ 385
- ä¿á½«ú«óδ⌐ αѪ¿¼ Zorlib ......................... 387
- êß»«½∞º«óá¡¿Ñ ¬«¼á¡ñ¡δσ Σá⌐½«ó
- ÉÑßπαßδ
- çá¼Ñτá¡¿∩
-
-
- ÅÉêïÄåàìêà 2: æÄÄüÖàìêƒ Äü ÄÿêüèÇò ................. 388
-
- æ««íΘÑ¡¿∩ ¬«¼»¿½∩Γ«αá «í «Φ¿í¬áσ
- ZTC1, ZTCPP1 ¿ ZTC1B
- ÄΦ¿í¬¿ ó C++ αáßΦ¿αÑ¡¿∩σ
- ÄΦ¿í¬¿ ßΓá¡ñáαΓ¡«ú« C ........................... 391
- æ««íΘÑ¡¿∩ «í «Φ¿í¬áσ «Γ αÑñá¬Γ«αá ßó∩ºÑ⌐ ........ 399
- æ««íΘÑ¡¿∩ «í «Φ¿í¬áσ «Γ Zorlib .................. 404
- ÅαÑñπ»αѪñÑ¡¿∩
- æ««íΘÑ¡¿∩ «í «Φ¿í¬áσ
- æ¿ßΓѼ¡δÑ «Φ¿í¬¿ ............................. 405
- æ««íΘÑ¡¿∩ «í «Φ¿í¬áσ «Γ MAKE
- æ««íΘÑ¡¿∩ «í «Φ¿í¬áσ «Γ ú½«íá½∞¡«ú« «»Γ¿¼¿ºáΓ«αá 407
- æ««íΘÑ¡¿∩ «í «Φ¿í¬áσ óαѼѡ¿ ¿ß»«½¡Ñ¡¿∩ ......... 408
-
-
- ÅÉêïÄåàìêà 3
-
- ÅÑαÑσ«ñ «Γ »αÑñδñπΘ¿σ óÑαß¿⌐ Zortech C ¬«¼»¿½∩Γ«αá .. 409
- ÄíΘ¿Ñ í½«¬¿
- ï¿ΓÑα¡δÑ
- î«ñѽ¿ »á¼∩Γ¿
- ÅαÑñ«»αÑñѽѡ¡δÑ ¼á¬α«ßδ ........................ 410
- ÅαÑ»α«µÑßß«α
- Çα¿Σ¼ÑΓ¿¬á ¡áñ ñá½∞¡¿¼¿ π¬áºáΓѽ∩¼¿
- 꺼ѡѡ¡δÑ í¿í½¿«ΓÑτ¡δÑ Σπ¡¬µ¿¿
- ÉÑñᬵ¿∩ ßó∩ºÑ⌐ ................................. 411
- ê¡ΓÑαΣÑ⌐ß ß ∩ºδ¬«¼ áßßѼí½Ñαá
-
-
- ÅÉêïÄåàìêà 4 .......................................... 412
-
- Å«½¡á∩ Γáí½¿µá ¬«ñ«ó ASCII ......................... 412
-
-
-
-
-
-
- ùáßΓ∞ 1
-
- É ô è Ä é Ä ä æ Æ é Ä Å Ä ï £ ç Ä é Ç Æ à ï ƒ
- ──────────────────────────────────────────────
-
-
- ü¢æÆÉ¢ë æÆÇÉÆ
- ─────────────
-
- èαáΓ¬« «í πßΓá¡«ó¬Ñ
-
- ÅαѪñÑ, τѼ ¡áτáΓ∞ αáºαáíáΓδóáΓ∞ »α«úαá¼¼δ ¡á C++ ¿ß»«½∞-
- ºπ∩ Zortech C++, ¡Ñ«íσ«ñ¿¼« »αáó¿½∞¡« ¡áßΓα«¿Γ∞ éáΦ¿ ñ¿ß¬¿.
- äá¡¡«Ñ απ¬«ó«ñßΓó« »« íδßΓα«⌐ úÑ¡Ñαᵿ¿ »αÑñ¡áº¡áτÑ¡«
- ñ½∩ »«½∞º«óáΓѽÑ⌐, ¿¼ÑεΘ¿σ ªÑßΓ¬¿Ñ ñ¿ß¬¿.
- çá í«½ÑÑ ñÑΓá½∞¡«⌐ ¿¡Σ«α¼áµ¿Ñ⌐ »« πßΓá¡«ó¬Ñ «Γßδ½áѼ ¬
- τáßΓ¿ 2,αáºñѽπ:"Å«ñα«í¡«Ñ απ¬«ó«ñßΓó« »« πßΓá¡«ó¬Ñ ß¿ßΓѼδ".
-
- ôßΓá¡«ó¬π Zortech C++ ¡á ªÑßΓ¬«¼ ñ¿ß¬Ñ óδ»«½¡∩ÑΓ Σá⌐½
- ZTCSETUP.EXE. Åα¿ ¿ß»«½¡Ñ¡¿¿ φΓ«⌐ »α«úαá¼¼δ íπñÑΓ ß«ºñá¡ ¬á-
- ΓὫú C:\ZORTECH ¿ α∩ñ »«ñ¬áΓὫú«ó.
-
- ä« ºá»π߬á ZTCSETUP éá¼ ¡πª¡« ßñѽáΓ∞ ¬«»¿ε ñ¿ßΓα¿íπΓ¿ó-
- ¡δσ ñ¿ß¬«ó ¿ ñ½∩ ¿¡ßΓ«½½∩µ¿¿ ¿ß»«½∞º«óáΓ∞ φΓ¿ αáí«τ¿Ñ ¬«»¿¿.
- é ñá½∞¡Ñ⌐ΦѼ éá¼ ß½ÑñπÑΓ σαá¡¿Γ∞ ¿ ñ¿ßΓα¿íπΓ¿óδ, ¿ αáí«τ¿Ñ
- ñ¿ß¬ÑΓδ ó ¡áñѪ¡«¼ ¼ÑßΓÑ.
-
- ä½∩ ºá»π߬á ZTCSETUP πßΓá¡«ó¿ΓÑ ñ¿ß¬ÑΓπ #1 αáí«τÑ⌐ ¬«»¿¿
- ß¿ßΓѼδ ó ¡á¬«»¿Γѽ∞ A:. àß½¿ π éáß ΓѬπΘÑÑ »α¿ú½áΦÑ¡¿Ñ ¡Ñ
- A>, Γ« »ÑαÑ⌐ñ¿ΓÑ ¡á ¡Ñú«, ¡áíαáó A: ¿ ºáΓѼ ¡áªáó <Enter>.
-
- ê¼Ñ∩ »α¿ú½áΦÑ¡¿Ñ A:>, ¡áíÑα¿ΓÑ:
-
- ZTCSETUP <Enter>
-
- äá½ÑÑ ß½Ññπ⌐ΓÑ ¿¡ßΓαπ¬µ¿∩¼ ¡á φ¬αá¡Ñ. Å« ¼ÑαÑ ¬«»¿α«óá¡¿∩
- Σá⌐½«ó ß ¬áªñ«⌐ ñ¿ß¬ÑΓδ éáß íπñπΓ »α¿ú½áΦáΓ∞ ßΓáó¿Γ∞ ß½Ññπε-
- Θπε ñ¿ß¬ÑΓπ. ê, ßΓáó∩ ÑÑ, éδ ñ«½ª¡δ íδΓ∞ ΓóÑαñ« πóÑαÑ¡δ ó
- Γ«¼, τΓ« «¡á ∩ó½∩ÑΓß∩ Γ«⌐, ¬«Γ«αá∩ ΓαÑíπÑΓß∩.
-
- Å« «¬«¡τá¡¿¿ ¬«»¿α«óá¡¿∩ ñ¿ß¬ÑΓ ó¬½ετ¿ΓÑ ß½ÑñπεΘ¿Ñ ßΓ᫬¿
- ó ¬«¡Ñµ éáΦÑú« Σá⌐½á AUTOEXEC.BAT:
-
- SET PATH=C:\ZORTECH\BIN
-
- (½¿í« ñ«íáó∞ΓÑ ó ßΓ᫬π PATH ß»¿ß¬á ΓѬπΘ¿σ ¼áαΦαπΓ«ó ¿
- ;C:\ZORTECH\BIN )
-
- SET INCLUDE=C:\ZORTECH\INCLUDE
- (é φΓ«¼ ¬áΓὫúÑ ¡áσ«ñ∩Γß∩ ó¬½ετáѼδÑ Σá⌐½δ)
-
- SET LIB=C:\ZORTECH\LIB
- (é φΓ«¼ ¬áΓὫúÑ ¡áσ«ñ∩Γß∩ í¿í½¿«ΓÑτ¡δÑ Σá⌐½δ)
-
- àß½¿ π éáß ¿¼ÑÑΓß∩ RAM-ñ¿ß¬ (φ½Ñ¬Γα«¡¡δ⌐ ñ¿ß¬, ñ¿ß¬ ó ñ«-
- »«½¡¿Γѽ∞¡«⌐ «»ÑαáΓ¿ó¡«⌐ »á¼∩Γ¿), Γ« ¼«ª¡« ñ«íáó¿Γ∞ ΓᬪÑ
-
- SET TMP=d:
-
- úñÑ d: - φΓ« ¿¼∩ ¡á¬«»¿Γѽ∩ RAM-ñ¿ß¬á. èα«¼Ñ Γ«ú«, αѬ«¼Ñ¡-
- ñπÑΓß∩ ñ«íáó¿Γ∞ ó Σá⌐½ CONFIG.SYS ß½ÑñπεΘ¿Ñ ñóÑ ßΓ᫬¿:
-
- BUFFERS=20
- FILES=20
-
- àß½¿ éá¼ ºáσ«τÑΓß∩, τΓ«íδ ¬«¡ΓѬßΓ¡« ºáó¿ß¿¼δÑ »«ñ߬Ậ¿
- ºáúαπªá½¿ß∞ áóΓ«¼áΓ¿τÑ߬¿, Γ« éá¼ ¡πª¡« óßΓáó¿Γ∞ ó Σá⌐½
- AUTOEXEC.BAT ß½ÑñπεΘπε ßΓ᫬π:
-
- ZTCHELP
-
- Ç ΓÑ»Ñα∞ »ÑαѺá»πßΓ¿ΓÑ ¼áΦ¿¡π ñ½∩ ¡áßΓα«⌐¬¿ ¡«ó«ú« «¬απªÑ¡¿∩.
-
-
- èαáΓ¬« « αÑñá¬Γ¿α«óá¡¿¿
-
- éσ«ñ ó αÑñá¬Γ«α ∩ó½∩ÑΓß∩ »α«ßΓδ¼, Ñß½¿ ß¿ßΓѼá πßΓá¡«ó½Ñ-
- ¡á ß ñ¿ßΓα¿íπΓ¿óá Γá¬, ¬á¬ «»¿ßá¡« óδΦÑ. ÅÑαÑ⌐ñ¿ΓÑ ó ¬áΓá-
- ½«ú, ó ¬«Γ«α«¼ éδ σ«Γ¿ΓÑ σαá¡¿Γ∞ ¿ßσ«ñ¡δÑ Σá⌐½δ, ¿ ¡áíÑα¿ΓÑ:
-
- ZED <Enter>
-
- éδ ó«⌐ñÑΓÑ ó αÑñá¬Γ«α »α«úαá¼¼. àß½¿ éá¼ σ«τÑΓß∩ óδºóáΓ∞
- αÑñá¬Γ¿απѼδ⌐ Σá⌐½ »α¿ óσ«ñÑ ó αÑñá¬Γ«α, Γ« ¿ß»«½∞ºπ⌐ΓÑ ß½Ñ-
- ñπεΘ¿⌐ á½∞ΓÑα¡áΓ¿ó¡δ⌐ ß¿¡Γá¬ß¿ß (Ñß½¿, ¡á»α¿¼Ñα, éáΦ Σá⌐½
- ¡áºδóáÑΓß∩ MYPROG.CPP): ZED MYPROG.CPP ¿ ó φΓ«¼ ß½πτáÑ:
- Ñß½¿ Σá⌐½ ¡Ñ ßπΘÑßΓóπÑΓ, Γ« «¡ íπñÑΓ ß«ºñá¡ ¿ «Γ¬αδΓ ñ½∩ αÑ-
- ñá¬Γ¿α«óá¡¿∩; ¿¡áτÑ «Γ¬α«ÑΓß∩ ßπΘÑßΓóπεΘ¿⌐ Σá⌐½.
-
- ÆÑ»Ñα∞ ¼«ª¡« ¡áí¿αáΓ∞ éáΦπ æ++ »α«úαá¼¼π.
-
- ÄΓ¼ÑΓ¿¼, τΓ« «íδτ¡« C++ Σá⌐½δ ¿¼ÑεΓ αáßΦ¿αÑ¡¿Ñ .cpp.
- ä½∩ Γᬿσ Σá⌐½«ó áóΓ«¼áΓ¿τÑ߬¿ ¿ß»«½∞ºπÑΓß∩ C++-¬«¼»¿-
- ½∩Γ«α, ¬á¬ ¿ C-¬«¼»¿½∩Γ«α ñ½∩ Σá⌐½«ó ß αáßΦ¿αÑ¡¿Ñ¼ .c.
- ¡« »α¿¡πñ¿Γѽ∞¡« ¿ß»«½∞º«óáΓ∞ ¬«¼»¿½∩Γ«α C++ ñ½∩
- óßÑσ Σá⌐½«ó, Ñß½¿ ó«ß»«½∞º«óáΓ∞ß∩ Σ½áú«¼ _cpp ¬«¼»¿½∩-
- µ¿¿ (ñÑΓ὿ ß¼. ó τáßΓ¿ 2: æ»αáó«τ¡«Ñ απ¬«ó«ñßΓó«).
- öá⌐½δ ºáú«½«ó¬«ó (header files) ñ½∩ C++ «íδτ¡« ¿¼ÑεΓ
- αáßΦ¿αÑ¡¿Ñ .hpp.
-
- çá»πßΓ¿ΓÑ ZED ß«ú½áß¡« óδΦÑ»α¿óÑñÑ¡¡«¼π «»¿ßá¡¿ε ¿ ¡áíÑ-
- α¿ΓÑ »α«úαá¼¼π:
-
- #include <stream.hpp>
- main()
- {
- cout << "Hello Bjarne!\n";
- }
-
- »α«óÑα∞ΓÑ »αáó¿½∞¡«ßΓ∞ ¡áí«αá ¿ ºáΓѼ ó«⌐ñ¿ΓÑ ó ¼Ñ¡ε, ¡áªáó
- Esc. K½áó¿ΦἿ ß« ßΓαѽ¬á¼¿ »ÑαѼÑßΓ¿ΓÑ »«ñßóÑτÑ¡¡πε »«½«ß¬π
- ¡á »π¡¬Γ Others ¿ ¡áª¼¿ΓÑ ¬½. Enter (¿½¿ ªÑ »α«ßΓ« ¡áª¼¿ΓÑ
- íπ¬óπ o [½áΓ.]). Ç ΓÑ»Ñα∞ Γᬿ¼ ªÑ ß»«ß«í«¼ ¿º ß½ÑñπεΘÑú«
- ¼Ñ¡ε [»«ñ¼Ñ¡ε] óδíÑα¿ΓÑ «»µ¿ε cOmpile.
- çñÑß∞ ZED »α«ß¿Γ ºáñáΓ∞ ¡Ñ¬«Γ«αδÑ Σ½áú¿ [Γ.Ñ. αѪ¿¼δ]
- ¬«¼»¿½∩µ¿¿ ½¿í« ñαπúπε ¿¡Σ«α¼áµ¿ε, Γá¬πε ¬á¬ ñ«»«½¡¿Γѽ∞¡δÑ
- í¿í½¿«ΓÑτ¡δÑ Σá⌐½δ. ìáªáó F1, éδ »«½πτ¿ΓÑ ß»¿ß«¬ ¿¼ÑεΘ¿σß∩
- «»µ¿⌐, á Γá¬ªÑ ¿σ «»¿ßá¡¿Ñ. àß½¿ ó »«½Ñ óó«ñá πªÑ ¿¼ÑÑΓß∩
- ¬á¬«⌐-½¿í« ΓѬßΓ, Γ« Ñú« ¼«ª¡« πñ὿Γ∞, ¡áªáó F9. ĬαπªÑ¡¿Ñ
- ºá»«¼¿¡áÑΓ Σ½áú¿ ¬«¼»¿½∩Γ«αá, ¿ß»«½∞º«óá¡¡δÑ »α¿ »«ß½Ññ¡Ñ⌐
- ¬«¼»¿½∩µ¿¿, ¿ πßΓá¡áó½¿óáÑΓ ¿σ Γᬫó묨 »« π¼«½τá¡¿ε. éóÑñ¿-
- ΓÑ Σ½áú ¬«¼»¿½∩Γ«αá ñ½∩ ¬«¼»á¬Γ¡«⌐ ¼«ñѽ¿ »á¼∩Γ¿, Γ.Ñ.
-
- -mc <Enter>
-
- àß½¿ »α¿¼Ñα ¡áíαá¡ »αáó¿½∞¡«, »α«úαá¼¼á «Γ¬«¼»¿½¿απÑΓß∩.
- àß½¿ ó »α«µÑßßÑ ¬«¼»¿½∩µ¿¿ óßΓαÑΓ¿Γß∩ «Φ¿í¬á, Γ« π»αáó½Ñ¡¿Ñ
- ó«ºóαáΘáÑΓß∩ αÑñá¬Γ«απ ß »«º¿µ¿«¡¿α«ó᡿Ѽ ¬παß«αá ¡á ßΓ᫬Ñ
- ß «Φ¿í¬«⌐. æ½ÑñπÑΓ «Γ¼ÑΓ¿Γ∞, τΓ« »α¿τ¿¡á «Φ¿í¬¿ ¼«ú½á íδΓ∞
- óδΦÑ φΓ«⌐ ßΓ᫬¿, ¡« ßαáºπ ¡Ñ íδ½á «í¡áαπªÑ¡á á¡á½¿ºáΓ«α«¼.
- Åα¿ πß»ÑΦ¡«¼ «¬«¡τá¡¿¿ ¬«¼»¿½∩µ¿¿ éá¼ óδñáÑΓß∩ »α¿ú½áΦÑ-
- ¡¿Ñ ñ½∩ óó«ñá ¬«¼á¡ñ¡«⌐ ßΓ᫬¿ áαúπ¼Ñ¡Γ«ó éáΦÑ⌐ »α«úαá¼¼δ.
- ìᪿ¼á⌐ΓÑ ¬½áó¿Φ¿: Enter - ñ½∩ ¡Ñ¼Ññ½Ñ¡¡«ú« ¿ß»«½¡Ñ¡¿∩ »α«ú-
- αá¼¼δ, Esc - ñ½∩ ó«ºóαáΓá ó αÑñá¬Γ«α. àß½¿ éδ ¡Ñ ß«σαá¡¿½¿
- »α«úαá¼¼π, Γ« ó ñá¡¡«⌐ Γ«τ¬Ñ éá¼ ß½ÑñπÑΓ ßñѽáΓ∞ φΓ«, ¿ß-
- »«½∞ºπ∩ «»µ¿ε FS.
- [äóá ß»«ß«íá ß«σαá¡Ñ¡¿∩ Σá⌐½á: Å«ß½Ñ ¡áªáΓ¿∩ ¬½. Esc éδ
- »«»áñÑΓÑ ó ¼Ñ¡ε αѪ¿¼«ó, ºñÑß∞ »«ß½Ññ«óáΓѽ∞¡« ¡áª¼¿ΓÑ íπ¬óδ
- f, s - Σá⌐½ ß«σαá¡∩ÑΓß∩, éδ «ßΓáÑΓÑß∞ ó ß¿ßΓÑ¼Ñ C++; ¡áσ«-
- ñ∩ß∞ ó αÑñá¬Γ«αÑ, ¡áª¼¿ΓÑ ñóÑ ¬½áó¿Φ¿ «ñ¡«óαѼѡ¡« Alt-v -
- Σá⌐½ ß«σαá¡¿Γß∩, ¿ éδ »ÑαÑσ«ñ¿ΓÑ ó DOS.
- éáα¿á¡Γ »Ñαó«ú« ß»«ß«íá: »ÑαѼÑΘÑ¡¿Ñ »«ñßóÑτÑ¡¡«⌐ »«½«ß¬¿
- »« φ½Ñ¼Ñ¡Γá¼ ¼Ñ¡ε »α¿ »«¼«Θ¿ ¬½áó¿Φ ß« ßΓαѽ¬á¼¿ ¿ ¡áªáΓ¿Ñ
- ¬½. Enter ¡á ¡πª¡«¼ φ½Ñ¼Ñ¡ΓÑ].
- é ¡áΦѼ »α¿¼ÑαÑ »«ñ«í¡«⌐ »α«í½Ñ¼δ ¡ÑΓ; éδ ¼«ªÑΓÑ »α«ßΓ«
- ¡áªáΓ∞ Enter ñ½∩ ¿ß»«½¡Ñ¡¿∩ »α«úαá¼¼δ. éδ πó¿ñ¿ΓÑ »α¿óÑΓßΓ-
- óÑ¡¡«Ñ «íαáΘÑ¡¿Ñ ¬ Bjarne, á Γá¬ªÑ »α¿ú½áΦÑ¡¿Ñ ¡áªáΓ∞ ½εíπε
- ¬½áó¿Φπ ñ½∩ ó«ºóαáΓá ó ZED.
- êΓá¬, éδ ß »«¼«Θ∞ε Zortech C++ «Γ¬«¼»¿½¿α«ó὿ ¿ ¿ß»«½-
- ¡¿½¿ éáΦπ »Ñαóπε »α«úαá¼¼π.
-
- éδσ«ñ ¿º αÑñá¬Γ«αá Γ«ªÑ »α«ßΓ. ì᪼¿ΓÑ ¬½áó¿Φπ Esc ñ½∩
- óσ«ñá ó αѪ¿¼ ¼Ñ¡ε, Ñß½¿ éδ πªÑ ¡Ñ ¡áσ«ñ¿ΓÑß∞ ó ¡Ñ¼, ¿ ¡áíÑ-
- α¿ΓÑ FX (τΓ« óδºδóáÑΓ »ÑαÑσ«ñδ Files, eXit). éδñáÑΓß∩ ºá»-
- α«ß »«ñΓóÑαªñÑ¡¿∩ ¡Ñ«íσ«ñ¿¼«ßΓ¿ ß«σαá¡Ñ¡¿∩ ¬áªñ«ú« ¿º¼Ñ¡Ñ¡-
- ¡«ú« íπΣÑαá.
-
- çá í«½ÑÑ »«ñα«í¡«⌐ ¿¡Σ«α¼áµ¿Ñ⌐ »« ¬«¼»¿½∩µ¿¿ ¿ ¬«¼»«¡«ó¬Ñ
- C++-»α«úαá¼¼ «Γßδ½áѼ ¬ τáßΓ¿ 2: æ»αáó«τ¡«Ñ απ¬«ó«ñßΓó«.
-
-
-
- ééàäàìêà é æ++
- ────────────────
-
- äá¡¡«Ñ Éπ¬«ó«ñßΓó« ß«ßΓáó½Ñ¡« ó »αÑñ»«½«ªÑ¡¿¿, τΓ« π éáß
- ÑßΓ∞ «»δΓ αáí«Γδ ¡á ∩ºδ¬Ñ C. Ç Ñß½¿ ¡ÑΓ, ¿¼ÑεΓß∩ ñ¡δ
- »«ñσ«ñ∩Θ¿σ ¬¡¿ú. ìá»α¿¼Ñα, ¡Ñ»½«σ« óδíαáΓ∞ ¬¡¿úπ "C Primer
- Plus", áóΓ«αδ Waite, Prata, and Martin, ó ¬«Γ«α«⌐ ¿¼ÑÑΓß∩
- ú½áóá »« C++.
- àß½¿ éδ πªÑ º¡áÑΓÑ C, Γ« éá¼ ½Ñú¬« íπñÑΓ »«ñ¡∩Γ∞ß∩ ñ«
- C++, »«ß¬«½∞¬π ¡ÑΓ ¡πªñδ πτ¿Γ∞ óÑß∞ ∩ºδ¬ ßαáºπ. éδ ß¼«ªÑΓÑ
- »α«úαá¼¼¿α«óáΓ∞ Γ«τ¡« ΓᬠªÑ, ¬á¬ Ñß½¿ íδ éδ ¡áσ«ñ¿½¿ß∞ ó C,
- ñ«íáó½∩∩ «ß«íÑ¡¡«ßΓ¿ C++ »« ¼ÑαÑ ¿σ ¿ºπτÑ¡¿∩.
- ê¼ÑεΓß∩ ÑΘÑ ñóÑ ¬¡¿ú¿, ¬«Γ«αδÑ éá¼ ßΓ«¿Γ »α¿«íαÑßΓ¿:
- "An Introduction to Object-Oriented Programming and C++",
- áóΓ«αδ Richard Wiener ¿ Lewis Pinson (¿ºñáΓѽ∞ßΓó« Addison-
- Wesley 1988), ¬«Γ«αá∩ óó«ñ¿Γ C-»α«úαá¼¼¿ßΓá ó C++ ¿ ß«ñÑনΓ
- α∩ñ »«½Ñº¡δσ »α¿¼Ñα«ó, ¿ "The C++ Programming Language",
- áóΓ«α Bjarne Stroustrup - ß«ºñáΓѽ∞ C++ (¿ºñá¡á Addison-Wes-
- ley 1986). ¥Γá ¬¡¿úá ∩ó½∩ÑΓß∩ "φ¬ß»ÑαΓ¡δ¼ απ¬«ó«ñßΓó«¼" »«
- æ++ ¿ ß«ñÑαª¿Γ ¼¡«ú« ¼á½Ñ¡∞¬¿σ, ¡« ¿ß¬πß¡δσ ¿ »α«ñó¿¡πΓδσ
- »α¿¼Ñα«ó. çñÑß∞ αáßß¼áΓα¿óáÑΓß∩ ß½«ª¡δ⌐ ¼áΓÑα¿á½, ¿ «¡á ∩ó-
- ½∩ÑΓß∩ "»«ß½Ññ¡¿¼ ß½«ó«¼" »« ∩ºδ¬π. ÄíÑ ¬¡¿ú¿ »«ßΓáó½∩εΓß∩
- Σ¿α¼«⌐ Zortech.
- äóÑ ß½ÑñπεΘ¿Ñ ú½áóδ »αÑñ¡áº¡áτÑ¡δ ñ½∩ Γ«ú«, τΓ«íδ éδ »α«-
- τπóßΓó«ó὿ ∩ºδ¬ »α«úαá¼¼¿α«óá¡¿∩ C++ ¿ Zortech C++ ó «ß«-
- íÑ¡¡«ßΓ¿ ¿ «ßó«¿½¿ íδ ñ«»«½¡¿Γѽ∞¡δÑ ó«º¼«ª¡«ßΓ¿, ¬«Γ«αδÑ
- »αÑñ½áúáÑΓ C++ »« ßαáó¡Ñ¡¿ε ß« ßó«¿¼ »αÑñΦÑßΓóÑ¡¡¿¬«¼ - C.
- Ä¡¿ ¡Ñ »αÑΓÑ¡ñπεΓ ¡á α«½∞ ú½πí«¬«ú« απ¬«ó«ñßΓóá, ¿ ¼δ αѬ«-
- ¼Ñ¡ñπѼ éá¼ ¬π»¿Γ∞ «ñ¡π ¿½¿ «íÑ π»«¼∩¡πΓδÑ óδΦÑ ¬¡¿ú¿ ß
- ΓѼ, τΓ«íδ éδ ñ«ßΓ¿ú½¿ »α«ΣÑßß¿«¡á½¿º¼á ó ∩ºδ¬Ñ. è¡¿ú¿ ¼«ª¡«
- ºá¬áºáΓ∞ ó Zortech.
-
-
- ÄíΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡«Ñ »α«úαá¼¼¿α«óá¡¿Ñ (ÄÄÅ)
-
- ûѽ∞ «íΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡«ú« »α«úαá¼¼¿α«óá¡¿∩ - »«óδΦÑ-
- ¡¿Ñ »α«¿ºó«ñ¿Γѽ∞¡«ßΓ¿ Γαπñá »α«úαá¼¼¿ßΓá. ƒºδ¬ »«¼«úáÑΓ éá¼
- ßΓαπ¬Γπα¿α«óáΓ∞ éáΦ¿ »α«úαá¼¼δ, á Γá¬ªÑ »Ñαѿ߻«½∞º«óáΓ∞ ¬«ñ,
- ¬«Γ«αδ⌐ éδ ¿½¿ ¬Γ«-Γ« ñαπú«⌐ πªÑ ¡á»¿ß὿. ùѼ ¼Ñ¡∞ΦÑ αáí«-
- Γδ »« ¡á»¿ßá¡¿ε »α«úαá¼¼δ, ΓѼ óδΦÑ éáΦá »α«¿ºó«ñ¿Γѽ∞¡«ßΓ∞.
- ÄíΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡δÑ ∩ºδ¬¿ »«ºó«½∩εΓ éá¼ ß«ºñáΓ∞ ¡ÑτΓ«,
- ¡áºδóáѼ«Ñ ¬½áßß«¼. è½áßß «»αÑñѽ∩ÑΓ ¡«óδ⌐ Γ¿» ñá¡¡δσ. ū߽Ñ
- ºáóÑαΦÑ¡¿∩ «»αÑñѽѡ¿∩ ¬½áßßá ¬«¼»¿½∩Γ«α «íαáíáΓδóáÑΓ Ñú«
- Γ«τ¡« ΓᬠªÑ, ¬á¬ Ñß½¿ íδ «¡ íδ½ Γ¿»«¼ ñá¡¡δσ, óßΓα«Ñ¡¡δ¼ ó
- ∩ºδ¬ »«ñ«í¡« Γ¿»π µÑ½«ú«(integer) ¿½¿ τ¿ßѽ ß »½áóáεΘÑ⌐ Γ«τ-
- ¬«⌐ (float). éßÑ, τΓ« ΓαÑíπÑΓß∩ ßñѽáΓ∞ ñ½∩ ¬½áßßá ¬á¬
- óßΓα«Ñ¡¡«ú« Γ¿»á, ó¬½ετá∩ ¬«¡Γα«½∞ «Φ¿í«¬, óδ»«½¡∩ÑΓ ¬«¼»¿-
- ½∩Γ«α. Ä»¿ßá¡¿Ñ ¡«óδσ ¬½áßß«ó τáßΓ« ¡áºδóáÑΓß∩ «»¿ß᡿Ѽ
- áíßΓαá¬Γ¡δσ Γ¿»«ó ñá¡¡δσ.
- àß½¿ π éáß ¿¼ÑÑΓß∩ ¡Ñ¬«Γ«αδ⌐ ¬½áßß, ¿ éá¼ ¡πªÑ¡ ¡Ñ߬«½∞¬«
- «Γ½¿τ¡δ⌐ «Γ ¡Ñú«, Γ« ¡Ñ ΓαÑíπÑΓß∩ ó«ºóαáΘáΓ∞ß∩ ¿ ¿º¼Ñ¡∩Γ∞
- ¬½áßß. ¡« »α«ßΓ« ߬áºáΓ∞: "«»αÑñѽ¿Γ∞ ¡«óδ⌐ ¬½áßß,
- ¬«Γ«αδ⌐ ßπΓ∞ ßΓáαδ⌐ óδΦÑ«»¿ßá¡¡δ⌐ ¬½áßß »½εß ¡Ñ¬«Γ«αδÑ
- ¿º¼Ñ¡Ñ¡¿∩ ¿ ñ«»«½¡Ñ¡¿∩, ¬«Γ«αδÑ ∩ σ«τπ ßñѽáΓ∞". ¥Γ« [»ÑαÑ«-
- »αÑñѽѡ¿Ñ] ¡áºδóáÑΓß∩ ¡áß½Ññ«ó᡿Ѽ ¿½¿ »«α«ªñÑ¡¿Ñ¼ »α«¿º-
- ó«ñ¡«ú« Γ¿»á - éδ "»α«¿ºó«ñ¿ΓÑ" ¡«óδ⌐ Γ¿» ¿º ßΓáα«ú« ¿½¿,
- ñαπú¿¼¿ ß½«óἿ, ó ¡«ó«¼ ¬½áßßÑ "¡áß½ÑñπÑΓÑ" ßó«⌐ßΓóá ßΓáα«-
- ú«. Ä»¿ßá¡¿Ñ ¬½áßß«ó Γᬿ¼ ß»«ß«í«¼ ¿ºíáó½∩ÑΓ éáß «Γ ¼áßßδ
- αáí«Γδ.
- ÄíΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡«¼π ∩ºδ¬π ΓαÑíπÑΓß∩ í«½∞ΦÑ, τѼ
- áíßΓαá¬Γ¡δÑ Γ¿»δ ñá¡¡δσ ¿ »α«¿ºó«ñ¡δÑ Γ¿»δ. àß½¿ π éáß ó¡á-
- τá½Ñ ¿¼ÑÑΓß∩ Ññ¿¡ßΓóÑ¡¡δ⌐ ¬½áßß, τáßΓ« ¡áºδóáѼδ⌐ íẫóδ¼,
- ¿ ¿º ¡Ñú« »«α«ªñáÑΓß∩ α∩ñ ¬½áßß«ó, Γ« éá¼ »«ΓαÑíπÑΓß∩
- π»αáó½∩Γ∞ »α«¿ºó«ñ¡δ¼¿ ¬½áßßἿ ¿º íẫó«ú«. ìá»α¿¼Ñα, »πßΓ∞
- íẫóδ⌐ ¬½áßß - shape ¿ »«α«ªñÑ¡¡δÑ: line, circle ¿ square,
- »α¿τѼ ó ¬áªñ«¼ ¿º ¡¿σ ¿ß»«½∞ºπεΓß∩ αạδÑ á½ú«α¿Γ¼δ α¿ß«óá-
- ¡¿∩. ÆÑ¼ ¡Ñ ¼Ñ¡ÑÑ, ¼«ª¡« ß«ºñáΓ∞ ß»¿ß«¬ ¿º shapes (Σ«α¼) ¿
- «Γα¿ß«óáΓ∞ (draw) ¬áªñπε ¿º ¡¿σ [»« ßó«Ñ¼π á½ú«α¿Γ¼π], ¡Ñ
- º¡á∩, τΓ« α¿ßπÑΓß∩: ¬απú, ¬óáñαáΓ ¿½¿ »α«τÑÑ. ¥Γ« ßó«⌐ßΓó«,
- τáßΓ« ¡áºδóáѼ«Ñ "»«½¿¼«αΣ¿º¼«¼" (commonality), «º¡áτáÑΓ:
- «íΩÑ¬Γ ßá¼ πΓ«τ¡∩ÑΓ ó« óαѼ∩ ¿ß»«½¡Ñ¡¿∩, τΓ« ¿¼Ñ¡¡« ñѽáΓ∞ ß
- éáΦ¿¼ ß««íΘÑ¡¿Ñ¼. (Å«½¿¼«αΣ¿º¼ ¡Ñ 󫺡¿¬áÑΓ áóΓ«¼áΓ¿τÑ߬¿ -
- ß¼«Γα¿ »π¡¬Γ « ó¿αΓπá½∞¡δσ Σπ¡¬µ¿∩σ).
- é«Γ ¬αáΓ¬«Ñ «»αÑñѽѡ¿Ñ ÄÄÅ:
-
- Abstract Data Typing + Type Derivation + Commonality
- ────────────────────────────────────────────────────-
- (ÇíßΓαá¬Γ¡δÑ Γ¿»δ ñá¡¡δσ + »«α«ªñÑ¡¿Ñ »α«¿ºó«ñ¡δσ Γ¿»«ó +
- »«½¿¼«αΣ¿º¼)
- éδ »«⌐¼ÑΓÑ ß¼δß½ φΓ¿σ ΓÑନ¡«ó »α¿ ¿ºπτÑ¡¿¿ «ß«íÑ¡¡«ßΓÑ⌐
- ∩ºδ¬á. Ç »«¬á ºá»«¼¡¿ΓÑ ½¿Φ∞, τΓ« C++ »«¼«ªÑΓ éá¼ »α«úαá¼¼¿-
- α«óáΓ∞ í«½ÑÑ »α«¿ºó«ñ¿Γѽ∞¡«.
-
-
- ¥ΣΣÑ¬Γ¿ó¡«ßΓ∞
-
- é »α«Φ½«¼ «íΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡δÑ ∩ºδ¬¿ í뫨 «τÑ¡∞ ¡ÑφΣ-
- ΣÑ¬Γ¿ó¡δ¼¿. ê σ«Γ∩ »α«úαá¼¼¿ßΓ »¿ΦÑΓ »α«úαá¼¼δ ñ«ßΓáΓ«τ¡«
- íδßΓα«, á ¡á ¼áΦ¿¡Ñ «¡¿ ¿ß»«½¡∩εΓß∩ óßÑ ªÑ ¼Ññ½Ñ¡¡« ¿ ΓαÑíπ-
- εΓ í«½∞Φ¿σ αÑßπαß«ó. ìá»α¿¼Ñα, ó «íΘѼ ß½πτáÑ, ¡πª¡« ºáúαπ-
- ªáΓ∞ óßÑ «¬απªÑ¡¿Ñ αáºαáí«Γ¬¿ »α«úαá¼¼δ »α¿ ÑÑ ¿ß»«½¡Ñ¡¿¿.
- ê φΓ« ñѽáÑΓ "ß«½¿ñ¡πε" »α«úαá¼¼¡πε »«ññÑ᪬π úα«¼«ºñ¬«⌐.
- è«úñá Bjarne Stroustrup ó Bell Laboratories »α¿ßΓπ»¿½ ¬
- ß«ºñá¡¿ε C++, «¡ «Γ¬áºá½ß∩ ªÑαΓó«óáΓ∞ ߬«α«ßΓ∞ε ¿ φΣΣÑ¬Γ¿ó-
- ¡«ßΓ∞ε ¿ß»«½∞º«óá¡¿∩ »á¼∩Γ¿, »α¿ßπΘ¿¼¿ C. Ä¡ Γá¬ªÑ ºá¿¼ßΓ-
- ó«óá½ »α¿ßπΘ¿⌐ C "¼¿¡¿¼á½¿ßΓ߬¿⌐" »«ñσ«ñ: ∩ñα« ∩ºδ¬á ó¬½ετá-
- ÑΓ ó«º¼«ª¡«ßΓ¿, ¬«Γ«αδσ ñ«ßΓáΓ«τ¡« ñ½∩ ß«ºñá¡¿∩ óßÑú« Γ«ú«,
- τΓ« ¼«ª¡« Γ«½∞¬« ó««íαếΓ∞. àß½¿ ßαÑñßΓóá ∩ñαá éá¼ ¡Ñ »«ñ-
- σ«ñ∩Γ, Γ« éδ ¼«ªÑΓÑ ßἫßΓ«∩Γѽ∞¡« "αáßΦ¿α∩Γ∞" ∩ºδ¬ »πΓѼ
- ß«ºñá¡¿∩ ¡«óδσ ¬½áßß«ó.
- êΓá¬, C++ »αÑñ«ßΓáó½∩ÑΓ éá¼ φΣΣÑ¬Γ¿ó¡δ⌐ »« ߬«α«ßΓ¿
- ¿ß»«½¡Ñ¡¿∩ »α«úαá¼¼ ¬«¼»¿½∩Γ«α ¡áα∩ñπ ß Ñú« »αÑ¿¼πΘÑßΓóἿ
- ñ½∩ αáºαáí«Γ¬¿ «íΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡δσ »α«úαá¼¼¡δσ ß¿ßΓѼ.
-
-
- èαáΓ¬¿Ñ »αÑñóáα¿Γѽ∞¡δÑ ßóÑñÑ¡¿∩
-
-
- ÄíΩ∩ó½Ñ¡¿∩ ¿ «»¿ßá¡¿∩
-
- ¥Γ« ¡á ßἫ¼ ñÑ½Ñ æ, ¡« ó᪡« »«¡∩Γ∞ αẽ¿τ¿Ñ ¼Ñªñπ «»¿-
- ßá¡¿∩¼¿ ¿ «íΩ∩ó½Ñ¡¿∩¼¿, ó «ß«íÑ¡¡«ßΓ¿, ¬«úñá αÑτ∞ ¿ñÑΓ «
- C++. ÄíΩ∩ó½Ñ¡¿Ñ - φΓ« ß««íΘÑ¡¿Ñ ¬«¼»¿½∩Γ«απ. Ä¡« ¡Ñ úÑ¡Ñα¿-
- απÑΓ «íΩÑ¬Γ¡«ú« ¬«ñá. Ä¡« »α«ßΓ« ú«ó«α¿Γ: "ó«Γ Γᬠóδú½∩ñ¿Γ
- φΓá Σπ¡¬µ¿∩: ÑÑ ¿¼∩, τΓ« «¡á ó«ºóαáΘáÑΓ ¿ ßΓá¡ñáαΓ¡«Ñ «íαá-
- ΘÑ¡¿Ñ ¬ ¡Ñ⌐. Ç ßá¼ ¬«ñ éδ πó¿ñ¿ΓÑ ¡Ñ߬«½∞¬« »«ºªÑ." ÄíΩ∩ó½Ñ-
- ¡¿Ñ ß««íΘáÑΓ ¬«¼»¿½∩Γ«απ, τΓ« φΓ« ¡Ñ «Φ¿í¬á, Ñß½¿ éδ ó¿ñ¿ΓÑ
- óδºδóáѼπε »«ñ«í¡δ¼ «íαẫ¼ Σπ¡¬µ¿ε; «Φ¿í¬«⌐ ∩ó½∩ÑΓß∩, Ñß½¿
- Σπ¡¬µ¿∩ ¡Ñ óδºδóáÑΓß∩ ¿¼Ñ¡¡« Γᬿ¼ ß»«ß«í«¼. é«Γ »α¿¼Ñα
- «íΩ∩ó½Ñ¡¿∩:
-
- double foo(int i, long j, float bar);
-
- é ß½πτáÑ C, Ñß½¿ éδ ¡Ñ «íΩ∩󿽿 Σπ¡¬µ¿ε ñ« ÑÑ ¿ß»«½∞º«óá-
- ¡¿∩, Γ« óßÑ ¡«α¼á½∞¡«: ¬«¼»¿½∩Γ«α »αÑñ»«½áúáÑΓ, τΓ« «¡á ó«º-
- óαáΘáÑΓ Γ¿» int, ¿ ¡Ñ ¬«¡Γα«½¿απÑΓ »ÑαÑñáóáѼδÑ Ñ⌐ »áαá¼ÑΓαδ,
- ΓᬠτΓ« éδ ¼«ªÑΓÑ »ÑαÑñáóáΓ∞ ½εí«Ñ ¬«½¿τÑßΓó« »áαá¼ÑΓα«ó ½ε-
- í«ú« Γ¿»á. é ß½πτáÑ C++ ¬«¡Γα«½∞ Γ¿»«ó πß¿½Ñ¡. æπΘÑßΓóπÑΓ
- ¼á½« ß½πτáÑó, ¬«úñá ¼«ª¡« «í«⌐Γ¿ß∞ íѺ «íΩ∩ó½Ñ¡¿∩ Σπ¡¬µ¿¿
- ñ« ÑÑ ¿ß»«½∞º«óá¡¿∩. Ä»¿ßá¡¿Ñ Σπ¡¬µ¿¿ - φΓ« ¬«ñ, ¬«Γ«αδ⌐
- Γ«τ¡« ú«ó«α¿Γ, ¬á¬ αáí«ΓáÑΓ Σπ¡¬µ¿∩.
-
-
- Åα«Γ«Γ¿»¿α«óá¡¿Ñ Σπ¡¬µ¿⌐
-
- ÄíαáΓ¿ΓÑ ó¡¿¼á¡¿Ñ, τΓ« ó »α¿óÑñÑ¡¡«¼ óδΦÑ »α¿¼ÑαÑ ºáñá¡«
- ¡Ñ Γ«½∞¬« ¿¼∩ Σπ¡¬µ¿¿, ¡« Γá¬ªÑ ¿ Γ¿» ¬áªñ«ú« ¿º »áαá¼ÑΓα«ó.
- Æá¬«⌐ »«ñσ«ñ º¡á¬«¼ »α«úαá¼¼¿ßΓá¼ ¡á Åá߬á½Ñ ¿ ¡áºδóáÑΓß∩
- »α«Γ«Γ¿»¿α«ó᡿Ѽ Σπ¡¬µ¿⌐. Ä¡« »«ºó«½∩ÑΓ ¬«¼»¿½∩Γ«απ »α«óÑ-
- α∩Γ∞ »αáó¿½∞¡«ßΓ∞ ó맮óá Σπ¡¬µ¿¿. é ß½πτáÑ C éδ ¡Ñ ºáñáó὿
- [Γ¿»«ó] »áαá¼ÑΓα«ó »α¿ «íΩ∩ó½Ñ¡¿¿ Σπ¡¬µ¿¿. Ç »α¿ «íαáΘÑ¡¿¿ ¬
- Σπ¡¬µ¿¿ éδ ¼«ú½¿ íδ »ÑαÑñáΓ∞ Ñ⌐ ½εí«Ñ ¬«½¿τÑßΓó« »áαá¼ÑΓα«ó
- ½εí«ú« Γ¿»á ¿ ¬«¼»¿½∩Γ«απ ñ« φΓ«ú« ¡ÑΓ ñѽá - φΓ« «íπß½áó½¿óá-
- ÑΓ óßÑ ó¿ñδ «Φ¿í«¬ [»ÑαÑñáτ¿ Σá¬Γ¿τÑ߬¿σ »áαá¼ÑΓα«ó]. ì«óδ⌐
- ANSI-ßΓá¡ñáαΓ ¡á C (¿ ß««ΓóÑΓßΓóÑ¡¡« Zortech C ¬«¼»¿½∩Γ«α,
- ß½ÑñπεΘ¿⌐ ßΓá¡ñáαΓπ) ΓαÑíπÑΓ »α«Γ«Γ¿»¿α«óá¡¿∩ Σπ¡¬µ¿⌐.
-
- ç«αΓÑσ«ó߬¿⌐ C++ óδ»«½¡∩ÑΓ áóΓ«»α«Γ«Γ¿»¿α«óá¡¿Ñ. àß½¿ éδ
- ¡Ñ «»¿ß὿ Σπ¡¬µ¿ε ñ« ÑÑ ¿ß»«½∞º«óá¡¿∩, Γ« ¬«¼»¿½∩Γ«α ß¼«Γ-
- α¿Γ ¿ «»αÑñѽ∩ÑΓ »α«Γ«Γ¿» »α¿ »Ñαó«¼ «íαáΘÑ¡¿¿ ¬ Σπ¡¬µ¿¿.
-
-
- êß»«½∞º«óá¡¿Ñ Σá⌐½«ó-ºáú«½«ó¬«ó ñ½∩ «íΩ∩ó½Ñ¡¿∩ ¬½áßß«ó
-
- Åα¿ ß«ºñá¡¿¿ ¡«ó«ú« Γ¿»á ñá¡¡δσ éδ «»¿ßδóáÑΓÑ ¬½áßß ó µÑ-
- ½«¼: ¿¼∩ ¡«ó«ú« Γ¿»á ñá¡¡δσ, ¬á¬¿Ñ ñá¡¡δÑ «¡ ß«ñÑনΓ, τΓ«
- ºá Σπ¡¬µ¿¿ αáí«ΓáεΓ ß ¡¿¼. Æá¬¿Ñ «»¿ßá¡¿∩ ¬½áßß«ó «íδτ¡«
- «Γ¡«ß∩Γß∩ ó Σá⌐½ ºáú«½«ó¬«ó. ïεí«⌐, ¬Γ« σ«τÑΓ ¿ß»«½∞º«óáΓ∞
- ¬½áßß, »α«ßΓ« ó¬½ετáÑΓ (#include) φëà ºáú«½«ó«τ¡δ⌐ Σá⌐½.
- ÆÑ¼ ßá¼δ¼ ¬«¼»¿½∩Γ«απ ß««íΘáÑΓß∩, τΓ« ¬½áßß ßπΘÑßΓóπÑΓ, ¿
- τΓ« ¼«ª¡« ß ¡¿¼ ñѽáΓ∞. àß½¿ ªÑ éδ »δΓáÑΓÑß∞ ñѽáΓ∞ τΓ«-Γ«
- ¡Ñ¬«ααÑ¬Γ¡«, Γ« ¬«¼»¿½∩Γ«α éá¼ «í φΓ«¼ ß««íΘ¿Γ.
-
- è »α¿¼Ñαπ, »αÑñ»«½«ª¿¼, τΓ« ¿¼ÑÑΓß∩ ¬½áßß, ¡áºδóáѼδ⌐
- box, ¬«Γ«αδ⌐ éδ ¼«ªÑΓÑ αáß»¿ßáΓ∞ (fill) ΓαѼ∩ µÑ½δ¼¿, á »«-
- Γ«¼ «»πßΓ«Φ¿Γ∞ (empty). çáú«½«ó«τ¡δÑ Σá⌐½δ Zortech C++
- «íδτ¡« «¬á¡τ¿óáεΓß∩ αáßΦ¿αÑ¡¿Ñ¼ .hpp ¿ »«φΓ«¼π »πßΓ∞ ºáú«½«-
- ó«τ¡δ⌐ Σá⌐½ box ¡áºδóáÑΓß∩ box.hpp. ì¿ªÑ »α¿ó«ñ¿Γß∩ »α¿¼Ñα
- Γ«ú«, ¬á¬ ¼«ª¡« ¿ß»«½∞º«óáΓ∞ í«¬ßδ:
-
- #include "box.hpp"
- /* ß««íΘáÑΓ ¬«¼»¿½∩Γ«απ, τΓ« Γá¬«Ñ box */
- main()
- {
- box B1, B2; /* ß«ºñáñ¿¼ ¡Ñ߬«½∞¬« boxes */
- B1.fill(1,2,3);
- B2.fill(10,11,12); /* ºá»«½¡¿¼ ¿σ */
- B1.empty();
- B2.empty(); /* «τ¿ßΓ¿¼ ¿σ */
- }
-
- èᬠºñÑß∞ ó¿ñ¡«, ¿ß»«½∞º«óá¡¿Ñ ¬Ñ¼-Γ« «»¿ßá¡¡«ú« ¬½áßßá
- óÑß∞¼á »α«ßΓ«.
-
- èαáΓ¬«Ñ óóÑñÑ¡¿Ñ ó »«Γ«¬¿
-
- "Å«Γ«¬¿" (streams) - φΓ« ºáαá¡ÑÑ «»αÑñѽѡ¡δ⌐ ¡áí«α ¬½áß-
- ß«ó ñ½∩ «í¼Ñ¡á ß ¬«¡ß«½∞ε ¿ Σá⌐½á¼¿. Ä¡¿ í«½ÑÑ ÑßΓÑßΓóÑ¡¡δ ¿
- ¡á¼¡«ú« ½ÑúτÑ ó ¿ß»«½∞º«óá¡¿¿, τѼ í¿í½¿«ΓÑτ¡δÑ Σπ¡¬µ¿¿ ó
- »α«ßΓ« C (σ«Γ∩ éδ ¼«ªÑΓÑ, ¬«¡Ñτ¡«, »α«ñ«½ªáΓ∞ ¿ß»«½∞º«óá¡¿Ñ
- printf(), scanf() ¿ Γ.». - C++ ¡Ñ »αÑ»∩ΓßΓóπÑΓ ¿ß»«½∞º«óá¡¿ε
- »α«ßΓδσ C-Σπ¡¬µ¿⌐). é »α«ßΓ«¼ C ßΓá¡ñáαΓ¡δ⌐ óó«ñ/óδó«ñ óδ-
- »«½¡∩ÑΓß∩ ß ßΓá¡ñáαΓ¡δ¼¿ Σá⌐½á¼¿: óó«ñá-stdin, óδó«ñá-stdout
- ¿ Σá⌐½«¼ «íαáí«Γ¬¿ «Φ¿í«¬-stderr. é ß½πτáÑ »«Γ«¬«ó ¿¼ φ¬ó¿-
- óá½Ñ¡Γ¡δ cin, cout ¿ cerr ( ¿ ñ«»«½¡¿Γѽ∞¡« cprn ¿ caux ñ½∩
- »α¿¡ΓÑαá ¿ ñ«»«½¡¿Γѽ∞¡δσ »«αΓ«ó).
-
- Äß¡«ó¡á∩ ¿ñÑ∩ ß«ßΓ«¿Γ ó ß½ÑñπεΘѼ. ê¼ÑÑΓß∩ ¡Ñ߬«½∞¬«
- «íΩÑ¬Γ«ó ñ½∩ «αúá¡¿ºáµ¿¿ ó »α«úαá¼¼Ñ óó«ñá/óδó«ñá. ê óßÑ,
- τΓ« éá¼ ¡πª¡« ßñѽáΓ∞, - φΓ« «Γ»αáó¿Γ∞ ºá»α«ß ¬ ¡¿¼, ¿ «¡¿
- ßαáí«ΓáεΓ. ä½∩ αáí«Γδ ß »«Γ«¬«ó묨 «íΩѬΓἿ ¿ß»«½∞ºπεΓß∩
- «»Ñαᵿ¿ << ¿ >>,¬«Γ«αδÑ ¿¼ÑεΓ «ß«íδ⌐ ß¼δß½ ó ß½πτáÑ ¿ß»«½∞-
- º«óá¡¿∩ ß »«Γ«¬á¼¿ (φΓ« ¡áºδóáÑΓß∩ ß«ó¼ÑßΓ¡δ¼ ¿ß»«½∞º«ó᡿Ѽ
- «»Ñαᵿ⌐ ¿½¿ »ÑαÑúαπº¬«⌐ «»Ñαᵿ⌐ (Operator Overloading);
- ß¼. »π¡¬Γ "æ«ó¼ÑßΓ¡«Ñ ¿ß»«½∞º«óá¡¿Ñ «»Ñαᵿ⌐". ìá»α¿¼Ñα,
- »πßΓ∞ ¡á»αáó½∩ÑΓß∩ ¡Ñ߬«½∞¬« τ¿ßѽ ñ½∩ ßΓá¡ñáαΓ¡«ú« óδó«ñá :
-
- #include <stream.hpp>
- /* «íΩ∩ó½Ñ¡¿Ñ »«Γ«¬«ó«⌐ í¿í½¿«ΓѬ¿ */
- main()
- {
- int a = 1, b = 2, c = 20;
- double pi = 3.14;
- cout << a; /* óδó«ñ¿Γ º¡áτÑ¡¿Ñ a; ¼«ª¡«
- ó¬½ετáΓ∞ ½¿ΓÑαá½δ ¿ ßΓ᫬¿ ß«ó-
- ¼ÑßΓ¡« */
- cout << "b = " << b << "\n";
- cout <<"c ñ«½ª¡« íδΓ∞ = "<< 20 << "c = " << c << "\n";
- /* τΓ« »α«¿º«⌐ñÑΓ, Ñß½¿ óδ»«½¡¿Γ∞
- óßÑ ß«ó¼ÑßΓ¡«? */
- cout <<a << b << c << pi << "\n";
- }
-
- Å«Γ«¬¿ ¼«ª¡« Γá¬ªÑ ¿ß»«½∞º«óáΓ∞ ñ½∩ óó«ñá, ¼á¡¿»π½∩µ¿⌐ ß
- Σá⌐½á¼¿ ¿ »ÑαѼÑΘÑ¡¿∩ «íΩÑ¬Γ«ó »« »á¼∩Γ¿. éδ ¼«ªÑΓÑ ¡á»¿ßáΓ∞
- »«Γ«¬«óδÑ Σπ¡¬µ¿¿ ñ½∩ éáΦ¿σ ß«íßΓóÑ¡¡δσ «íΩÑ¬Γ«ó. çñÑß∞
- »«¬áºá¡« Γ«½∞¬« «ß¡«ó¡«Ñ, »«ß¬«½∞¬π »«Γ«¬¿ ¿ß»«½∞º«óá¡δ ñ½∩
- »ÑτáΓ¿ º¡áτÑ¡¿⌐ ó ¡áΦ¿σ »α¿¼Ñαáσ. é ß½ÑñπεΘÑ⌐ ú½áóÑ ΓᬪÑ
- ¿¼ÑεΓß∩ »α¿¼Ñαδ ß »«Γ«¬á¼¿, ó Γ«¼ τ¿ß½Ñ ºá¿¼ßΓó«óá¡¡δÑ
- ¿º ¬¡¿ú æΓαáπßΓαá»á (B.Stroustrup), á Γá¬ªÑ é¿¡Ñαá ¿ Å¿¡-
- ß«¡á (R.Wiener & L.Pinson).
-
-
- è½áßßδ - «»αÑñѽѡ¿Ñ éáΦ¿σ ß«íßΓóÑ¡¡δσ Γ¿»«ó
-
- äáóá⌐ΓÑ, ΓÑ»Ñα∞ »«ß¼«Γα¿¼ ¡á «ß¡«ó¡«Ñ «Γ½¿τ¿Ñ C++ «Γ C:
- 󫺼«ª¡«ßΓ∞ «»¿ßá¡¿∩ éáΦ¿σ ß«íßΓóÑ¡¡δσ Γ¿»«ó ñá¡¡δσ.
-
- Ä»¿ßá¡¿Ñ Γ¿»«ó ñá¡¡δσ ("áíßΓαá¬Γ¡δÑ Γ¿»δ ñá¡¡δσ") ∩ó½∩ÑΓ-
- ß∩ ¼«Θ¡«⌐ ¬«¡µÑ»µ¿Ñ⌐, ¿í« «¡« »«ºó«½∩ÑΓ éá¼ ß»α∩ΓáΓ∞ ß½«ª-
- ¡«ßΓ∞ éáΦÑ⌐ »α«úαá¼¼δ. ¥Γ« ñѽáÑΓ »α«úαá¼¼π í«½ÑÑ ½Ñú¬«⌐ ñ½∩
- »«¡¿¼á¡¿∩ ¿ «Γ½áñ¬¿. éδ ¼«ªÑΓÑ Γá¬ªÑ ß»α∩ΓáΓ∞ ß½«ª¡δÑ ßΓαπ¬-
- Γπαδ ñá¡¡δσ ó¡πΓα¿ ¬½áßß«ó ¿ íδΓ∞ πóÑαÑ¡¡δ¼¿, τΓ« ¡¿¬Γ« ñαπ-
- ú«⌐, ¬α«¼Ñ éáß, ¡Ñ ¼«ªÑΓ ¿º¼Ñ¡∩Γ∞ φΓ¿ ñá¡¡δÑ, - á Ñß½¿ ñá¡-
- ¡δÑ óßÑ ªÑ ¿º¼Ñ¡¿½¿ß∞, Γ« φΓ« éδ ¿º¼Ñ¡¿½¿ ¿σ. éßÑ φΓ« »«¼«-
- úáÑΓ ½«¬á½¿º«óáΓ∞ «Φ¿í¬¿.
-
- ä«ßΓπ» ¬ φ½Ñ¼Ñ¡Γá¼ ¬½áßßá π»αáó½∩ÑΓß∩ »α¿ »«¼«Θ¿ ¬½ετÑó«-
- ú« ß½«óá public. àß½¿ ¡ÑτΓ« - ßπΓ∞ public, Γ« «¡« ñ«ßΓπ»¡«
- ¬áªñ«¼π. Åα¿óáΓ¡δÑ (private) φ½Ñ¼Ñ¡Γδ ñ«ßΓπ»¡δ Γ«½∞¬« éá¼,
- ß«ºñáΓÑ½ε ¬½áßßá.
-
- ÅαѪñÑ, τѼ ¼δ ß«ºñáñ¿¼ ¡áΦ »Ñαóδ⌐ ¬½áßß, «τÑ¡∞ ó᪡«
- ñ«ú«ó«α¿Γ∞ß∩ « ΓÑନ¡«½«ú¿τÑ߬«⌐ αạ¿µÑ ¼Ñªñ𠬽ετÑóδ¼ ß½«-
- ó«¼ C++ class ¿ »«¡∩Γ¿Ñ¼ «íΩѬΓ. Class «»¿ßδóáÑΓ ¡«óδ⌐ Γ¿»
- ñá¡¡δσ: ¬á¬ «¡ óδú½∩ñ¿Γ ¿ ¬á¬¿Ñ Σπ¡¬µ¿¿ ¼«úπΓ íδΓ∞ óδ»«½¡Ñ¡δ
- ¡áñ ¡¿¼. ÄíΩÑ¬Γ - φΓ« φ¬ºÑ¼»½∩α ¡Ñ¬«Γ«α«ú« ¬½áßßá; «íΩÑ¬Γ«ó
- «ñ¡«ú« ¬½áßßá ¼«ªÑΓ íδΓ∞ ¼¡«ú«. è½áßß - φΓ« Σáíਪá Γ«ßΓÑα«ó
- (ToasterFactory), á Γ«ßΓÑαδ (toasters) - φΓ« «íΩѬΓδ, óδσ«-
- ñ∩Θ¿Ñ ¿º Σáíਪ¿. ìá»α¿¼Ñα:
-
- class ToasterFactory {
- int number_of_slices;
- float brown_ness;
- public: /* óδΦÑ»α¿óÑñÑ¡¡δÑ ñá¡¡δÑ ¡Ññ«- */
- /* ßΓπ»¡δ »«½∞º«óáΓѽε; */
- /* »«½∞º«óáΓѽ∞ ¼«ªÑΓ «íαáΓ¿Γ∞ß∩ */
- /* ¬ φΓ¿¼ Σπ¡¬µ¿∩¼ ñ½∩ ¿º¼Ñ¡Ñ¡¿∩ */
- /* ñá¡¡δσ */
- void insert_toast(int slices);
- void set_brown_ness(float brown_level);
- int is_ready();
- void pop_up();
-
- }; /* ÆÑ»Ñα∞ ¿ß»«½∞ºπѼ ¬½áßß, τΓ«íδ ß«ºñáΓ∞ ¡Ñ-
- ߬«½∞¬« «íΩÑ¬Γ«ó. è«ñ Σπ¡¬µ¿⌐ ¡áσ«ñ¿Γß∩ úñÑ-Γ«
- ó ñαπú«¼ ¼ÑßΓÑ */
- main() {
- ToasterFactory Toaster1, Toaster2, Toaster3;
- Toaster1.insert_toast(2); /* 󽫪¿Γ∞ ñóá ¬π߬á */
- Toaster2.set_brown_ness(4.2);
- if (Toaster3.is_ready()) Toaster3.pop_up();
- }
-
- é φΓ«¼ »α¿¼ÑαÑ ¼δ «»¿ß὿, τΓ« ¼«ªÑΓ ñѽáΓ∞ Γ«ßΓÑα, ¿ ¼δ
- óѽѽ¿ TosterFactory ß«ºñáΓ∞ Γα¿ Γ«ßΓÑαá. çáΓѼ ¼δ óѽѽ¿
- ¬áªñ«¼π Γ«ßΓÑαπ τΓ«-Γ« ñѽáΓ∞. ÄΓ¼ÑΓ¿¼, τΓ« φ½Ñ¼Ñ¡Γδ ñá¡¡δσ
- »«∩ó½∩εΓß∩ ñ« ¬½ετÑó«ú« ß½«óá public. ¥Γ« «º¡áτáÑΓ, τΓ« «¡¿
- ∩ó½∩εΓß∩ »α¿óáΓ¡δ¼¿; ó C++ óßÑ, τΓ« ∩ó¡« ¡Ñ ºáñá¡« ¬á¬
- public, ∩ó½∩ÑΓß∩ private.
-
- ÄΓ¼ÑΓ¿¼ ΓᬪÑ, τΓ« Σπ¡¬µ¿¿ »α¿ó∩ºδóáεΓß∩ ¬ ¬½áßßπ. Ç
- ¿¼Ñ¡¡«, éδ ¡Ñ ¼«ªÑΓÑ ß¬áºáΓ∞ insert_toast(2), ¡Ñ «Γ¡«ß∩ ÑÑ ¬
- «íΩѬΓπ. Å« φΓ«⌐ »α¿τ¿¡Ñ Σπ¡¬µ¿¿, ¬«Γ«αδÑ «íΩ∩ó½∩εΓß∩ ó¼ÑßΓÑ
- ß ¬½áßßἿ, ¡áºδóáεΓß∩ Σπ¡¬µ¿∩¼¿ τ½Ñ¡á¼¿ (¬½áßßá) - member
- functions.
-
- Å«∩ß¡¿Γѽ∞¡«Ñ ºá¼Ñτá¡¿Ñ »ÑαÑñ óΓ«αδ¼ »α¿¼Ñα«¼. îδ íπñѼ
- τáßΓ« »«¬áºδóáΓ∞ éá¼ «»¿ßá¡¿∩ ¬½áßß«ó ¿ ¬«ñ ¬á¬ ¡áσ«ñ∩Θ¿Ñß∩
- ó «ñ¡«¼ ¿ Γ«¼ ªÑ Σá⌐½Ñ. Stroustrup »«ßΓπ»ÑΓ á¡á½«ú¿τ¡« ó ßó«-
- Ñ⌐ ¬¡¿úÑ, ¿ φΓ« ¼«ªÑΓ ºá»πΓδóáΓ∞. Ä¡¿ »αÑñßΓáó½Ñ¡δ Γᬿ¼ «í-
- αẫ¼ ñ½∩ »α«ßΓ«Γδ, ¿ éá¼ ¡πª¡« ¡áíαáΓ∞ ¿ ¿ß»«½¡∩Γ∞ ¿σ Γ«τ¡«
- ΓᬠªÑ, ¬á¬ φΓ« »«¬áºá¡«. Äñ¡á¬«, ¬«úñá éδ »¿ΦÑΓÑ ßó«⌐ ¬«ñ,
- Γ« «íΩ∩ó½Ñ¡¿Ñ ¬½áßßá ß½ÑñπÑΓ ñѽáΓ∞ ó .hpp Σá⌐½áσ, á «»αÑñÑ-
- ½Ñ¡¿Ñ ¬½áßßá, Γ.Ñ. ßá¼ ¬«ñ, - ó .cpp Σá⌐½áσ (¬«Γ«αδÑ ó¬½ετá-
- εΓ (#include) .hpp Σá⌐½δ. Åα¿ φΓ«¼ ¬½áßßδ ¡á¼¡«ú« ½ÑúτÑ ¿ß-
- »«½∞º«óáΓ∞ ó ñαπú¿σ »α«úαá¼¼áσ.
-
-
- Å«½¡δ⌐ »α¿¼Ñα
-
- ä«»πßΓ¿¼, τΓ« ß«ºñá¡ ¬½áßß, ¡áºóá¡¡δ⌐ OriginalWork,
- ¬«Γ«αδ⌐ »αÑñßΓáó½∩ÑΓ τáßΓ∞ Γó«ατÑ߬«⌐ αáí«Γδ. æ¬áªÑ¼, τΓ« «¡
- ó¬½ετáÑΓ áóΓ«αá, ºáú«½«ó«¬, ñáΓπ ß«ºñá¡¿∩ ¿ µÑ¡π. ìẫóѼ
- Σá⌐½ OWORK.HPP.
-
- #include <stream.hpp>
- class OriginalWork {
- char author[20];
- char title[20];
- int month, day, year;
- int value;
- public:
- /* ó«-»Ñαóδσ, ¡ÑτΓ«, ¡áºδóáѼ«Ñ "¬«¡ßΓαπ¬Γ«α«¼" */
-
- OriginalWork (char * Auth, char * name, int m,
- int d, int y, int val);
- void print();
- }; /* æπΘÑßΓóÑ¡¡« ¡á½¿τ¿Ñ Γ«τ¬¿ ß ºá»∩-
- Γ«⌐ »«ß½Ñ ºá¬αδóáεΘÑ⌐ ߬«í¬¿ */
-
- çñÑß∞ ¼δ »«ñ«Φ½¿ ¬ »«¡∩Γ¿ε τÑú«-Γ« ¡«ó«ú« - ¬«¡ßΓαπ¬Γ«αá.
- çá¼ÑΓ¿¼, τΓ« ¿¼∩ ¬«¡ßΓαπ¬Γ«αá - Γ« ªÑ, τΓ« ¿ ¬½áßßá.
-
- 諼»¿½∩Γ«α óδºδóáÑΓ ¬«¡ßΓαπ¬Γ«α, ¬«úñá «íΩÑ¬Γ «íΩ∩ó½∩ÑΓß∩;
- »«φΓ«¼π ¼«ª¡« ó¬½ετ¿Γ∞ ó ¬«¡ßΓαπ¬Γ«α ¬«ñ, óδ»«½¡∩εΘ¿⌐ áóΓ«-
- ¼áΓ¿τÑ߬πε ¿¡¿µ¿á½¿ºáµ¿ε. é ¡áΦѼ ¬«¡ßΓαπ¬Γ«αÑ «¬áªÑΓß∩, τΓ«
- óßÑ º¡áτÑ¡¿∩ ó «íΩѬΓÑ íπñπΓ ¿¡¿µ¿á½¿º¿α«óá¡δ. çỿΦѼ ¬«ñ
- ñ½∩ OriginalWork ó Σá⌐½Ñ OWORK.CPP. Ä¡ »«ñ«íÑ¡ ºá»¿ß¿ C ¬«ñá
- ºá ¿ß¬½ετÑ¡¿Ñ¼ Γ«ú«, τΓ«:
-
- * ¬áªñ«Ñ ¿¼∩ Σπ¡¬µ¿¿-τ½Ñ¡á ñ«½ª¡« íδΓ∞ ßó∩ºá¡« ß ¬½áßß«¼,
- ñ½∩ ¬«Γ«α«ú« «¡á »¿ΦÑΓß∩, »α¿ »«¼«Θ¿ «»Ñαᵿ¿ C++ ::
-
- * Σπ¡¬µ¿¿-τ½Ñ¡δ ¿¼ÑεΓ ñ«ßΓπ» ¬ φ½Ñ¼Ñ¡Γá¼ ßΓαπ¬Γπαδ ñá¡¡δσ
- ¬½áßß«ó.
-
- #include "owork.hpp"
- /* ¬áóδτ¬¿ ñ½∩ Σá⌐½«ó ó ΓѬπΘѼ ¬áΓὫúÑ */
- #include <stream.hpp>
- /* πú½δ ñ½∩ Σá⌐½«ó ó ¬áΓὫúÑ include */
- #include <string.h>
- OriginalWork::OriginalWork (char * Auth, char * name,
- int m, int d, int y, int val)
- {
- month = m; day = d; year = y;
- value = val;
- strcpy(author, Auth); /* «íαáΘÑ¡¿Ñ ¬ C-Σπ¡¬µ¿¿ */
- strcpy(title, name);
- }
- void OriginalWork::print()
- {
- cout << "name: " << title << "\n";
- cout << "Author: " << author << "\n";
- cout << "Created on: " << month << "/" << day << "/"
- << year << "\n";
- cout << "Value: $" << value << "\n";
- }
-
- ìÑ«íδτ¡«ßΓ∞ ¬«¡ßΓαπ¬Γ«αá ß«ßΓ«¿Γ ó Γ«¼, τΓ« éá¼ ¡Ñ ¡πª¡«
- ú«ó«α¿Γ∞, ¬á¬«Ñ º¡áτÑ¡¿Ñ «¡ ó«ºóαáΘáÑΓ - ¬«¼»¿½∩Γ«α πªÑ
- º¡áÑΓ φΓ« (φΓ« π¬áºáΓѽ∞ ¡á ßá¼ «íΩѬΓ).
-
- Ĭ«¡τáΓѽ∞¡« ¼δ ¼«ªÑ¼ ¿ß»«½∞º«óáΓ∞ ¬½áßß Γᬿ¼ «íαẫ¼
- (¡áº«óѼ φëà Σá⌐½ MAIN.CPP):
-
- #include "owork.hpp"
- main()
- {
- OriginalWork painting("Bob Rembrandt",
- "Blue Boy",5,24,65,74);
- OriginalWork photo(Eisenstadt", "Moon",6,30,77,2000);
- OriginalWork chapter("Bruce Eckel", "Intro to C++,
- 5,24,88,0);
- painting.print();
- photo.print();
- charter.print();
- }
-
- ū߬«½∞¬π ¼δ »«¬áºá½¿ φΓπ »α«úαá¼¼π ó ó¿ñÑ ΓαÑσ αạδσ
- ß«ßΓáó½∩εΘ¿σ (OWORK.HPP, OWORK.CPP ¿ MAIN.CPP), Γ« éá¼ ¡áñ«
- «Γ¬«¼»¿½¿α«óáΓ∞ ó «íΩÑ¬Γ¡δÑ ¼«ñ㫨 Σá⌐½δ OWORK.CPP ¿
- MAIN.CPP ¿ ߬«¼»«¡«óáΓ∞ ¿σ ó ¿Γ«ú«óδ⌐ .EXE Σá⌐½, ¡áºóá¡¡δ⌐
- ART.EXE, ¬«¼á¡ñ«⌐:
-
- ZTC -oART.EXE MAIN OWORK
-
- Åα¿ φΓ«¼ Γá¬ªÑ íπñπΓ ßúÑ¡Ñα¿α«óá¡δ «íΩÑ¬Γ¡δÑ Σá⌐½δ
- OWORK.OBJ ¿ MAIN.OBJ. é¼ÑßΓ« φΓ«ú« ¼«ª¡« ß«íαáΓ∞ óßÑ ó
- Ññ¿¡ßΓóÑ¡¡δ⌐ Σá⌐½ ART.CPP ¿ «ßΓáó¿Γ∞ ¬«¼á¡ñπ:
-
- ZTC ART
-
- ¥Γ« ¼«ªÑΓ íδΓ∞ «τÑ¡∞ πñ«í¡« ñ½∩ ¡Ñí«½∞Φ¿σ »α«úαá¼¼ ¿ ñ½∩
- ¿σ ΓÑßΓ¿α«óá¡¿∩. Äñ¡á¬«, éδ πó¿ñ¿ΓÑ, τΓ« í«½∞Φ¿¡ßΓó« »α«Ñ¬-
- Γ«ó íπñÑΓ ß«ñÑαªáΓ∞ ¼áßß𠬽áßß«ó, ¡áσ«ñ∩Θ¿σß∩ ó αẽ¿τ¡δσ
- ¬«ñ«óδσ Σá⌐½áσ ¿ Σá⌐½áσ ºáú«½«ó¬«ó, ¿ ¼¡«ú¿Ñ ¿º ¡¿σ πªÑ «Γ-
- ¬«¼»¿½¿α«óá¡δ ó «íΩÑ¬Γ¡δÑ ¼«ñπ½¿. ü«½∞Φá∩ τáßΓ∞ αáí«Γδ »«
- «αúá¡¿ºáµ¿¿ »α«úαá¼¼δ »α«ßΓ« ß«ßΓ«¿Γ ó« ó¬½ετÑ¡¿¿ Σá⌐½«ó ºá-
- ú«½«ó¬«ó »α¿ ¿ß»«½∞º«óá¡¿¿ ¬½áßß«ó ó¡πΓα¿ éáΦÑ⌐ ú½áó¡«⌐
- (main) »α«µÑñπαδ ¿ ßí«α¬Ñ óßÑσ «íΩÑ¬Γ¡δσ ¼«ñπ½Ñ⌐, ß«ñÑαªáΘ¿σ
- «Γ¬«¼»¿½¿α«óá¡¡δ⌐ ¬«ñ ñ½∩ ¬½áßß«ó.
-
- çá¼ÑΓ¿¼, τΓ« ΓÑନ¡ "«íΩÑ¬Γ¡δ⌐" ¿ß»«½∞º«óá¡ ºñÑß∞ ó ¿ßΓ«-
- α¿τÑ߬«¼ ß¼δß½Ñ, á ¡Ñ ó «íΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡«¼: ¿ßσ«ñ¡δ⌐
- ¬«ñ - φΓ« «Γ»αáó¡á∩ Γ«τ¬á, á «íΩÑ¬Γ¡δ⌐ ¬«ñ ß«ºñáÑΓß∩ ¬«¼»¿-
- ½∩Γ«α«¼ ¿ »«¼ÑΘáÑΓß∩ ó «íΩÑ¬Γ¡δÑ ¼«ñ㫨 «Γ¬«¼»¿½¿α«óá¡¡«ú«
- ¬«ñá ß αáßΦ¿αÑ¡¿Ñ¼ .OBJ. ¥Γá ΓÑନ¡«½«ú¿∩ ¡Ñπñáτ¡á ¿ óδºδóá-
- ÑΓ »πΓá¡¿µπ, ¡« «¡á íδ½á αáºαáí«Γá¡á ñ« Γ«ú«, ¬á¬ 󫺡¿¬½«
- «íΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡«Ñ »α«úαá¼¼¿α«óá¡¿Ñ.
-
- ä½∩ ß«ºñá¡¿∩ »α«úαá¼¼δ, ¬«Γ«αá∩ ß«ßΓ«¿Γ ¿º ¼¡«ú¿σ ¡Ñºáó¿-
- ß¿¼« «Γ¬«¼»¿½¿α«óá¡¡δσ «íΩÑ¬Γ¡δσ ¼«ñπ½Ñ⌐, éá¼ ßΓ«¿Γ ¡á»¿ßáΓ∞
- ¬«¼á¡ñ¡δ⌐ Σá⌐½ MS DOS (.BAT), ó ¬«Γ«αδ⌐ ó¬½ετáεΓß∩ óßÑ ¡Ñ«í-
- σ«ñ¿¼δÑ ¬«¼á¡ñδ. ¥Γ« ñ«½ª¡« ß«¬αáΘáΓ∞ ºáΓαáΓδ ¡á ¡áí«α, ¡«
- ¡Ñ óαѼ∩: óß∩¬¿⌐ αáº, ¬«úñá éδ ß«ºñáÑΓÑ éáΦπ »α«úαá¼¼π, óÑß∞
- ¿ßσ«ñ¡δ⌐ ¬«ñ ñ«½ªÑ¡ íδΓ∞ »ÑαѬ«¼»¿½¿α«óá¡ ¡Ñºáó¿ß¿¼« «Γ
- Γ«ú«, ¿º¼Ñ¡∩½ß∩ «¡ ¿½¿ ¡ÑΓ. æπΘÑßΓóπÑΓ í«½ÑÑ αáºπ¼¡δ⌐ ß»«ß«í
- »«ñ«í¡«⌐ «αúá¡¿ºáµ¿¿: ß¼. ú½áóπ ê¡ßΓαπ¼Ñ¡Γáα¿⌐, úñÑ «»¿ßá¡á
- ß½πªÑí¡á∩ »α«úαá¼¼á make.
-
-
-
- æ«ó¼ÑßΓ¡«Ñ ¿ß»«½∞º«óá¡¿Ñ Σπ¡¬µ¿⌐ (function overloading)
-
- é ¡áΦѼ óΓ«α«¼ »«½¡«¼ »α¿¼ÑαÑ óóÑñѼ »«¡∩Γ¿Ñ ß«ó¼ÑßΓ¡«ú«
- ¿ß»«½∞º«óá¡¿∩ Σπ¡¬µ¿¿ (function overloading). ¥Γ« «º¡áτáÑΓ,
- τΓ« π éáß ¼«ªÑΓ íδΓ∞ ¼¡«ú« Σπ¡¬µ¿⌐ ß «ñ¡¿¼ ¿ ΓѼ ªÑ ¿¼Ñ¡Ñ¼,
- ¡« ß αáº¡δ¼¿ áαúπ¼Ñ¡ΓἿ, á ¬«¼»¿½∩Γ«α íπñÑΓ óδí¿αáΓ∞ »«ñσ«-
- ñ∩Θπε Σπ¡¬µ¿ε. ¥Γ« óÑß∞¼á σ«α«ΦÑÑ ßó«⌐ßΓó«, Γᬠ¬á¬ ñÑΓ὿
- «ßΓáεΓß∩ ߬αδΓ묨, ¿ éáΦ ¬«ñ ñѽáÑΓß∩ í«½ÑÑ ½Ñú¬« τ¿ΓáѼδ¼.
-
- éÑα«∩Γ¡«, ¡á¿í«½ÑÑ τáßΓ« óßΓαÑτáÑ¼δ¼ »α¿¼Ñα«¼ ß«ó¼ÑßΓ¡«ú«
- ¿ß»«½∞º«óá¡¿∩ Σπ¡¬µ¿⌐ ∩ó½∩εΓß∩ ¬«¡ßΓαπ¬Γ«αδ. Äíδτ¡« ßπΘÑßΓ-
- óπÑΓ ¡Ñ߬«½∞¬« »πΓÑ⌐ ß«ºñá¡¿∩ «íΩѬΓá. ìá»α¿¼Ñα, »πßΓ∞ ß«º-
- ñá¡ ¬½áßß, ¡áºóá¡¡δ⌐ date; «¡ ¼«ªÑΓ íδΓ∞ ¿¡¿µ¿á½¿º¿α«óá¡
- ΓαѼ∩ µÑ½δ¼¿ τ¿ß½á¼¿, ßΓ᫬«⌐, »αÑñßΓáó½∩εΘÑ⌐ ñáΓπ, ¿½¿
- ó««íΘÑ »α¿ «ΓßπΓßΓó¿¿ ñá¡¡δσ (¿ ó φΓ«¼ ß½πτáÑ ¿ß»«½∞ºπÑΓß∩
- ΓѬπΘá∩ ñáΓá).
-
- #include <stream.hpp>
- class date {
- int month, day, year; // ¼Ñß∩µ, ñÑ¡∞, ú«ñ
- public:
- date(); /* ¡ÑΓ ¡áτá½∞¡«ú« º¡áτÑ¡¿∩ - ΓѬπΘá∩ ñáΓá */
- date(int m, int d = 1, int y = 88);
- date(char * datestring);
- date(date &);
- void print(char * msg = "");
- };
-
- ¡« «Γ¼ÑΓ¿Γ∞ ÑΘÑ τΓ«-Γ« ¡«ó«Ñ: ó« óΓ«α«¼ ¬«¡ßΓαπ¬Γ«αÑ
- »ÑαѼѡ¡δÑ d ¿ y ¿¼ÑεΓ º¡áτÑ¡¿∩ »« π¼«½τá¡¿ε, ΓᬠτΓ« Ñß½¿
- íδ éδ ߬áªÑΓÑ date birthday(12); birthday áóΓ«¼áΓ¿τÑ߬¿ íπ-
- ñπΓ ºáñá¡δ º¡áτÑ¡¿∩: d = 1 ¿ y = 88. éδ Γá¬ªÑ ¼«ªÑΓÑ ß¬áºáΓ∞
- date birthday(11,5) ¿½¿ date birthday(12,5,87). ç¡áτÑ¡¿∩ »«
- π¼«½τá¡¿ε óßÑúñá ñ«½ª¡δ íδΓ∞ »«ß½Ññ¡¿¼¿ º¡áτÑ¡¿∩¼¿ ó ß»¿ß¬Ñ.
- ùÑΓóÑαΓδ⌐ ¬«¡ßΓαπ¬Γ«α ¡áºδóáÑΓß∩ ¿¡¿µ¿á½¿ºáµ¿Ñ⌐ ¬«»¿α«ó᡿Ѽ
- (copy initializier). Ä¡ ∩ó½∩ÑΓß∩ ߻ѵ¿á½∞¡δ¼ ¿ τáßΓ« óδ߬á-
- ¬¿óáÑΓ Γá¼, úñÑ éδ Ñú« ¡Ñ ªñÑΓÑ. ìá»α¿¼Ñα, ó «»¿ßá¡¿¿
-
- date celebration=birthday;,
-
- ¿¡¿µ¿á½¿ºáµ¿∩ ¬«»¿α«ó᡿Ѽ óδºδóáÑΓß∩ áóΓ«¼áΓ¿τÑ߬¿, Ñß½¿
- ñáªÑ «»ÑαáΓ«α ¿ ¡Ñ óδú½∩ñ¿Γ ¬á¬ ó맮ó φΓ«ú« ¬«¡ßΓαπ¬Γ«αá ¬«-
- Γ«αδ⌐ ñ«½ªÑ¡ íδ »«∩ó¿Γ∞ß∩ ¬á¬ date celebration(birthday);)
-
- ÄΓßπΓßΓó¿Ñ ¿¡¿µ¿á½¿ºáµ¿¿ ¬«»¿α«ó᡿Ѽ τáßΓ« ∩ó½∩ÑΓß∩ »α¿-
- τ¿¡«⌐ »α«í½Ñ¼ π ¡áτ¿¡áεΘ¿σ. Ä¡á ¡áßΓ«½∞¬« ó᪡á, τΓ« ß½Ññπε-
- ΘÑÑ «»αÑñѽѡ¿Ñ C++ Σ¿α¼δ AT&T íπñÑΓ áóΓ«¼áΓ¿τÑ߬¿ úÑ¡Ñα¿α«-
- óáΓ∞ ¿¡¿µ¿á½¿ºáµ¿ε ¬«»¿α«ó᡿Ѽ, Ñß½¿ Γ«½∞¬« éδ ¡Ñ ¡á»¿ß὿
- ÑÑ ßἿ. ÆÑ»Ñα∞ αáßß¼«Γα¿¼ ¬«ñ ñ½∩ ¬½áßßá date.
-
-
- #include "date.hpp"
- #include <time.h>
- #include <stdlib.h> /* ñ½∩ atoi() */
- date::date() {
- struct tm *t;
- time_t Ltime;
- time(&Ltime);
- t = localtime(&Ltime);
- month = t->tm_mon+1;
- day = t->tm_day;
- year = t->tm_year;
- }
- date::date(int m, int d, int y) {
- /* «Γ¼ÑτáѼ, τΓ« ¼δ ºáñ὿ º¡áτÑ¡¿∩
- »« π¼«½τá¡¿ε ½¿Φ∞ ó «íΩ∩ó½Ñ¡¿¿ ¬½áßßá */
-
- month = m; day = d; year = y;
- }
- date::date(char* datestring) {
- char buf[10]; /* óαѼѡ¡δ⌐ íπΣÑα ñ½∩ ¬π߬«ó */
- /* »αÑ«íαáºπÑΓ ñ« ΓÑσ »«α, »«¬á ¡Ñ
- αáºñѽ¿Γѽ∞ */
- char * dt = datestring; char *bf = buf;
- month = atoi(dt);
- while(*dt != '/' && *dt != ':') dt++;
- dt++; /* ñó¿ªÑ¼ß∩ ñ« '/' ¿½¿ ':' */
- day = atoi(dt);
- while(*dt != '/' && *dt != ':') dt++;
- dt++;
- year = atoi(dt);
- }
-
- date::date(date & otherdate)
- {
- /* ¿¡¿µ¿á½¿ºáµ¿∩ ¬«»¿α«ó᡿Ѽ */
- month = otherdate.month;
- day = otherdate.day;
- year = otherdate.year;
- }
-
- void date::print(char * msg) {
- cout <<msg <<" date: " <<
- month <<"/" << day << "/" <<year << "\n";
- }
-
- ê¡¿µ¿á½¿ºáµ¿∩ ¬«»¿α«ó᡿Ѽ ñѽáÑΓ ¡ÑτΓ« ¡Ñ«ª¿ñá¡¡«Ñ - «¡á
- «íαáíáΓδóáÑΓ ßó«⌐ »áαá¼ÑΓα Γá¬, ¬á¬ Ñß½¿ íδ «¡ íδ½ ßΓαπ¬Γπ-
- α«⌐, ¿ »α∩¼« «íαáΘáÑΓß∩ ¬ φ½Ñ¼Ñ¡Γá¼ ßΓαπ¬Γπαδ. è½áßß C++ -
- φΓ« ñÑ⌐ßΓó¿Γѽ∞¡« ßΓαπ¬Γπαá ß« ߻ѵ¿á½∞¡δ¼¿ σáαá¬ΓÑα¿ßΓ¿¬á¼¿,
- ¡« óßÑ ªÑ ßΓαπ¬Γπαá.
-
- àñ¿¡ßΓóÑ¡¡δ⌐ ß»«ß«í ¡Ñ»«ßαÑñßΓóÑ¡¡«⌐ óδí«α¬¿ »α¿óáΓ¡δσ
- φ½Ñ¼Ñ¡Γ«ó ½εí«ú« ¬½áßßá (ñáªÑ »α¿ΦÑñΦÑú« ó ¬áτÑßΓóÑ »áαá¼ÑΓ-
- αá) - φΓ«, Ñß½¿ ¼δ »«½πτ¿½¿ ¡á ñ«ßΓπ» ∩ó¡«Ñ αáºαÑΦÑ¡¿Ñ, Γ.Ñ.
- ¼δ ñ«½ª¡δ íδΓ∞ ó¡πΓα¿ Σπ¡¬µ¿¿-τ½Ñ¡á (member function) ¿½¿
- Σπ¡¬µ¿¿ ñαπúá (friend) (ß¼. »π¡¬Γ "ñαπº∞∩") ¬½áßßá, ß ¬«Γ«-
- αδ¼ ¼δ αáí«ΓáѼ.
-
- ÆÑ»Ñα∞ π ¡áß ¡Ñ߬«½∞¬« ó¿ñ«ó ¬«¡ßΓαπ¬Γ«α«ó; ó맮óѼ ¿σ:
-
- #include "date.hpp"
- main() {
- date today; /* óδºδóáÑΓ date(); */
- date also_today(today); /* óδºδóáÑΓ date (date &); */
- date today_too = today; /* óδºδóáÑΓ date (date &); */
- date long_ago(1,1,450);
- /* óδºδóáÑΓ date(int, int, int); */
- date far_ahead"7/8/2025");
- /* óδºδóáÑΓ date(char *); */
- today.print("today");
- also_today.print("also_today");
- today_too.print("today_too");
- long_ago.print("long_ago");
- far_ahead.print("far_ahead");
- }
-
-
- æ«ó¼ÑßΓ¡«Ñ ¿ß»«½∞º«óá¡¿Ñ «»Ñαᵿ⌐ (operator overloading)
-
- Æá¬ ¬á¬ ¡áñ óßΓα«Ñ¡¡δ¼¿ Γ¿»á¼¿, »«ñ«í¡δ¼¿ µÑ½δ¼ (int) ¿½¿
- τ¿ß½á¼ ß »½áóáεΘÑ⌐ Γ«τ¬«⌐ (float), ¼«ª¡« óδ»«½¡∩Γ∞ «»Ñαᵿ¿,
- Γ« ¿ Γ¿»δ, ¬«Γ«αδÑ ¼δ ß«ºñáѼ ¬á¬ »α«úαá¼¼¿ßΓδ, Γ«ªÑ ñ«½ª¡δ
- ¿¼ÑΓ∞ 󫺼«ª¡«ßΓ∞ «í½áñáΓ∞ »«ñ«í¡δ¼ ßó«⌐ßΓó«¼, Γ.Ñ. ñ«»πß-
- ¬áΓ∞ óδ»«½¡Ñ¡¿Ñ «»Ñαᵿ⌐ ¡áñ ß«í«⌐. àß½¿ éδ σ«Γ¿ΓÑ, τΓ«íδ
- «»Ñαᵿ∩ αáí«Γá½á ß éáΦ¿¼ ¡«óδ¼ Γ¿»«¼, Γ« éδ ñ«½ª¡δ ¿ß»«½∞-
- º«óáΓ∞ ß«ó¼ÑΘÑ¡¿Ñ (¿½¿ "»ÑαÑúαπº¬π") «»Ñαᵿ⌐ (operator
- overloading). "æ«ó¼ÑßΓ¡«Ñ" «º¡áτáÑΓ: "«»Ñαᵿ∩ ¿¼ÑÑΓ í«½ÑÑ
- «ñ¡«ú« ß¼δß½á, ¬«Γ«αδ⌐ óδí¿αáÑΓß∩ ó ºáó¿ß¿¼«ßΓ¿ «Γ ¬«¡-
- ΓѬßΓá". ìá»α¿¼Ñα, «»Ñαᵿ∩ '<<' ß«ó¼ÑßΓ¡« ¿ß»«½∞ºπÑΓß∩ ó
- "»«Γ«¬«óδσ" ¬½áßßáσ /»Ñαóδ⌐ ß¼δß½ «»Ñαᵿ¿ '<<' - ßñó¿ú ñ½∩
- µÑ½δσ/. îδ »α¿óÑñѼ ú½π»δ⌐ »α¿¼Ñα, ¡áºóá¡¡δ⌐ tuit, ΓᬠτΓ«
- éδ ß¼«ªÑΓÑ πó¿ñÑΓ∞ ß«ó¼ÑßΓ¡«Ñ ¿ß»«½∞º«óá¡¿Ñ «»Ñαᵿ⌐.
-
-
- #include <stream.hpp>
- clase tuit {
- int a, b, c;
- public:
- tuit(int i=0, int j = 0, int k = 0)
- { a=i; b = j; c = k; }
- /* ß¼. "«Γ¬αδΓδÑ Σπ¡¬µ¿¿" */
- tuit(tuit &); /* ¿¡¿µ¿á½¿ºáµ¿∩ ¬«»¿p«ó᡿Ѽ */
- tuit operator+(tuit &);
- tuit operator-(tuit &);
- tuit operator=(tuit &);
- void print(char * name = "");
- };
-
- tuit::tuit( tuit & othertuit) {
- a = othertuit.a; b = othertuit.b; c = othertuit.c;
- }
-
- tuit tuit::operator+(tuit & arg) {
- tuit result;
- result.a = a + arg.a;
- result.b = b + arg.b;
- result.c = c + arg.c;
- return result;
- }
-
- tuit tuit::operator-(tuit & arg) {
- tuit result;
- result.a = a - arg.a;
- result.b = b - arg.b;
- result.c = c - arg.c;
- return result;
- }
-
- tuit tuit::operator=(tuit & rvalue) {
- a = rvalue.a;
- b = rvalue.b;
- c = rvalue.c;
- return *this;
- }
-
- void tuit::print(char * name) {
- cout << name << ":";
- cout << "a = " << a << ", b = " << b <<
- ", c = " << c << "\n";
- }
-
- main() {
- tuit x(1,2,3), y(10), z(11,12);
- tuit u = x + y - z;
- /* »αѽÑßΓ¡« »α«ßΓ«, ¡Ñ Γᬠ½¿? */
- x.print("x"); y.print("y"); z.print("z");
- (x+y).print(x+y);
- (x+y-z).print("x+y-z");
- u.print("u");
- }
-
-
- é φΓ«¼ »α¿¼ÑαÑ ¿¼ÑεΓß∩ ñóá ¼ÑßΓá, ¬«Γ«αδÑ ¼«úπΓ »«ßΓáó¿Γ∞
- éáß ó Γπ»¿¬: ¿ß»«½∞º«óá¡¿Ñ '&' ¿ ¬½ετÑó«ú« ß½«óá this.
- æ¼δß½ '&', »« ßπΓ¿ ñѽá, ëà ªÑ, τΓ« ¿ ó C: "áñαÑß τÑú«-Γ«".
- éδ ¼«ªÑΓÑ ¿ß»«½∞º«óáΓ∞ Ñú«, ¬á¬ ¼«ú½¿ íδ ñѽáΓ∞ φΓ« ó C
- (Ñß½¿ π éáß ÑßΓ∞ int c, Γ« éδ ¼«ªÑΓÑ »«½πτ¿Γ∞ áñαÑß c, ߬á-
- ºáó &c). Äñ¡á¬«, ó C++ ¿ß»«½∞º«óá¡¿Ñ '&' αáßΦ¿αÑ¡« - ó »α¿-
- ¼ÑαÑ «¡« ¡áºδóáÑΓß∩ ßß佬«⌐ (reference). ç¡áτÑ¡¿∩ »«ßΓáó½∩-
- εΓß∩ Σπ¡¬µ¿∩¼ ¿ ó«ºóαáΘáεΓß∩ Σπ¡¬µ¿∩¼¿ "»« ßß佬Ñ". ¥Γ« «º-
- ¡áτáÑΓ: "ƒ »ÑαÑñáε ΓÑíÑ º¡áτÑ¡¿Ñ, »αÑóαáΓ¿ Ñú« ó áñαÑß".
- ÅÑαÑñáτá »« ßßδ½¬Ñ τáßΓ« »αÑñ»«τΓ¿Γѽ∞¡á »α¿ »ÑαÑñáτÑ »áαá-
- ¼ÑΓα«ó ¿ ó«ºóαáΓÑ º¡áτÑ¡¿⌐; «íδτ¡« «¡á »«óδΦáÑΓ φΣΣÑ¬Γ¿ó-
- ¡«ßΓ∞.
-
- è½ετÑó«Ñ ß½«ó« this «º¡áτáÑΓ "áñαÑß «íΩѬΓá, ó ¬«Γ«α«¼ ∩
- ¡áσ«ªπß∞". öπ¡¬µ¿¿ τ½Ñ¡δ ½Ñú¬« ¼«úπΓ óδí¿αáΓ∞ ½εí«⌐ φ½Ñ¼Ñ¡Γ
- «íΩѬΓá »α«ßΓ« »« ¿¼Ñ¡¿ φ½Ñ¼Ñ¡Γá, ¡« this ¡Ñ«íσ«ñ¿¼« ñ½∩
- »«½πτÑ¡¿∩ áñαÑßá «íΩѬΓá. Åα¿ ß«ó¼ÑßΓ¡«¼ ¿ß»«½∞º«óá¡¿¿ «»Ñ-
- αᵿ⌐ óßÑúñá ó᪡« óÑα¡πΓ∞ º¡áτÑ¡¿Ñ. é ß½πτáÑ operator+() ¿
- operator-() «¡« ß«óÑαΦÑ¡¡« «τÑó¿ñ¡« (αѺπ½∞ΓáΓ «»Ñαᵿ¿),
- ¡« ¡Ñ ∩ó½∩ÑΓß∩ Γᬿ¼ «τÑó¿ñ¡δ¼ ó ¡Ñ¬«Γ«αδσ ñαπú¿σ ß½πτá∩σ,
- »«ñ«í¡δσ operator++() ¿½¿ operator=().
-
- ùΓ«íδ αÑΦ¿Γ∞ φΓπ ¡Ñí«½∞Φπε ñ¿½Ñ¼¼π, »«¼¡¿ΓÑ, τΓ« éδ ñ«½ª-
- ¡δ π¼ÑΓ∞ ¿ß»«½∞º«óáΓ∞ «»Ñαᵿ¿ ó óδαáªÑ¡¿∩σ, »«ñ«í¡δσ
- if (A++) ¿ A=B=C. Å«φΓ«¼π αѺπ½∞ΓáΓ«¼ «»Ñαᵿ¿ ñ«½ªÑ¡ íδΓ∞
- ßá¼ «íΩѬΓ: *this. ÄΓ¼ÑΓ¿¼, τΓ« áñαÑß /this/ ñ«½ªÑ¡ íδΓ∞
- αế¼Ñ¡«óá¡ ñ« ó«ºóαáΓá αѺπ½∞ΓáΓá; Σπ¡¬µ¿∩ «íΩ∩ó½∩½áß∞ ¬á¬
- ó«ºóαáΘáεΘá∩ ßß佬π, ¿ ßß佬á "«ª¿ñáÑΓ", τΓ«íδ Ñ⌐ ñ὿
- «íΩѬΓ, á ¡Ñ áñαÑß «íΩѬΓá.
-
-
- 櫺ñá¡¿Ñ ¡«ó«ú« Γ¿»á ¿º ßΓáα«ú« Γ¿»á
-
- çñÑß∞ éδ ¼«ªÑΓÑ »«ñπ¼áΓ∞, τΓ« ΓαÑíπÑΓß∩ ¿ºα∩ñ¡« »«αáí«-
- ΓáΓ∞ »α¿ ß«ºñá¡¿¿ ¡«ó«ú« Γ¿»á. Æá¬ «¡« ¿ ÑßΓ∞, ¬« óαѼѡ¿,
- ¬«úñá éδ ñ«íáó½∩½¿ «»Ñαᵿ¿, á Γá¬ªÑ óßÑ ñαπú¿Ñ σ¿ΓαδÑ ó«º-
- ¼«ª¡«ßΓ¿. ì« Γá¬á∩ ¬«¡µÑ¡Γαᵿ∩ πß¿½¿⌐ «¬π»áÑΓß∩ ñóπ¼∩
- »πΓ∩¼¿:
-
- 1. Å«½πτ¿ó «ñ¡áªñδ ¡«óδ⌐ Γ¿» ¬á¬ «Γ½áªÑ¡¡δ⌐, éδ
- óßÑúñá αáí«ΓáÑΓÑ ß ¡¿¼. àú« ½Ñú¬« ¿ß»«½∞º«óáΓ∞ ó
- éáΦÑ⌐ ¬«¡Ñτ¡«⌐ ß¿ßΓѼÑ, »«Γ«¼π τΓ« ¬«¼»¿½∩Γ«α úá-
- αá¡Γ¿απÑΓ »αáó¿½∞¡«ßΓ∞ ¿¡ΓÑαΣÑ⌐ßá ¿ Γ«, τΓ« éδ
- ¿ß»«½∞ºπÑΓÑ Ñú« ¡áñ½ÑªáΘ¿¼ «íαẫ¼.
-
- 2. ê¼Ñ∩ «ñ¡áªñδ ß«ºñá¡¡δ⌐ αáí«ΓáεΘ¿⌐ Γ¿», éδ ¼«ªÑΓÑ
- π¡áß½Ññ«óáΓ∞ Ñú« ó ¡«óδσ Γ¿»áσ. éδ ¼«ªÑΓÑ ßñѽáΓ∞
- ¡Ñí«½∞Φπε ¿½¿ «τÑ¡∞ í«½∞Φπε ¼«ñ¿Σ¿¬áµ¿ε ñ½∩ ßó«-
- Ñú« ¡«ó«ú« Γ¿»á, ¡« óßÑ ªÑ í«½∞Φá∩ τáßΓ∞ αáí«Γδ
- πªÑ »α«ñѽá¡á.
-
- ū߼«Γα¿¼, ¬á¬ φΓ« αáí«ΓáÑΓ »α¿ ¡áß½Ññ«óá¡¿¿ ¿º ¬½áßßá
- OriginalWork. Å«ßΓα«¿¼ ¬½áßß ñ½∩ í«½ÑÑ ß»Ñµ¿Σ¿τ¡«⌐ Γó«ατÑß-
- ¬«⌐ αáí«Γδ:
-
-
- #include "owork.hpp" /* «íΩ∩ó½∩Ѽ íẫóδ⌐ ¬½áßß */
- class Painting : public OriginalWork {
- /* ¡áß½ÑñπÑΓ íẫóδ⌐ ¬½áßß */
- char style[30]; /* ñ«íáó½∩Ѽ ¡Ñ¬«Γ«αδÑ ¡«óδÑ τ½Ñ¡δ */
- char owner[30];
- public:
- Painting(char * artist, char * title, char * sty,
- char *own, int m, int d, int y, int val);
- void information(); /* ú«ó«α¿Γ ¡á¼ « ¬áαΓ¿¡Ñ */
- };
-
-
- àñ¿¡ßΓóÑ¡¡«Ñ αẽ¿τ¿Ñ ¼Ñªñπ Painting (å¿ó«»¿ß∞) ¿ «í몭«-
- óÑ¡¡δ¼ «»αÑñѽѡ¿Ñ¼ ¬½áßßá - φΓ« "public: OriginalWork",
- ¬«Γ«α«Ñ ú«ó«α¿Γ: "φëà ¡«óδ⌐ Γ¿» ñá¡¡δσ ß«ºñá¡ ¿º
- OriginalWork". public »«ºó«½∩ÑΓ »α«¿ºó«ñ¡«¼π (Coderived)
- ¬½áßßπ Painting ¿¼ÑΓ∞ ñ«ßΓπ» ¬« óßѼ public φ½Ñ¼Ñ¡Γá¼ íẫ-
- ó«ú« ¬½áßßá OriginalWork. ÆÑ»Ñα∞ «»αÑñѽ¿¼ Σπ¡¬µ¿¿ τ½Ñ¡δ:
-
-
- #include "painting.hpp" /* úñÑ ¡áσ«ñ¿Γß∩ «íΩ∩ó½Ñ¡¿Ñ */
- Painting::Painting(char * artist, char * title,
- char * style, char * owner, int m,
- int d, int y, int val)
- : (artist, title, m, d, y, val) {
- strcpy(style,sty);
- strcpy(owner,own);
- }
- void Painting::information() {
- cout << "Painting:\n";
- print();
- cout << "Style : " << style << "\n";
- cout << "Owner : " << owner << "\n";
- }
-
-
- çñÑß∞ »α«¿ßσ«ñ∩Γ ñóÑ ¼πñαÑ¡δÑ óÑΘ¿: óδºδóáÑΓß∩ ¬«¡ßΓαπ¬-
- Γ«α ñ½∩ íẫó«ú« ¬½áßßá ¿ »α«¿ßσ«ñ¿Γ «íαáΘÑ¡¿Ñ ¬ Σπ¡¬µ¿¿
- τ½Ñ¡π íẫó«ú« ¬½áßßá. è«¡ßΓαπ¬Γ«α ñ½∩ íẫó«ú« ¬½áßßá óδºδ-
- óáÑΓß∩ »«ß½Ñ ¿¼Ñ¡¿ Σπ¡¬µ¿¿ ¿ ß»¿ß¬á »áαá¼ÑΓα«ó ¿ ñ« «Γ¬αδΓ¿∩
- Σ¿úπα¡«⌐ ߬«í¬¿ Σπ¡¬µ¿¿. ¥Γ« «íαáΘÑ¡¿Ñ «í«º¡áτÑ¡« ñó«ÑΓ«τ¿Ñ¼,
- »«ñ«í¡« Γ«¼π, ¬á¬ «í«º¡áτÑ¡ ¡áß½ÑñπѼδ⌐ ¬½áßß ó «»¿ßá¡¿¿
- »α«¿ºó«ñ¡«ú« ¬½áßßá. àß½¿ éáΦ íẫóδ⌐ ¬½áßß ¿¼ÑÑΓ ß«ó¼ÑßΓ¡«
- ¿ß»«½∞ºπѼδÑ ¬«¡ßΓαπ¬Γ«αδ, Γ« éδ ¼«ªÑΓÑ óδºóáΓ∞ ½εí«⌐ ¿º
- ¬«¡ßΓαπ¬Γ«α«ó, »α«ßΓ« ºáñáóá∩ ß««ΓóÑΓßΓóπεΘ¿Ñ »áαá¼ÑΓαδ.
- é Painting::information(), ¼δ óδºó὿ print(), ¬«Γ«αá∩ ∩ó½∩-
- ÑΓß∩ Σπ¡¬µ¿Ñ⌐-τ½Ñ¡«¼ ¬½áßßá OriginalWork. ¥Γ« Γᬠ»α«ßΓ« -
- Ñß½¿ Σπ¡¬µ¿∩ ßπΘÑßΓóπÑΓ ó íáº«ó«¼ ¬½áßßÑ, Γ« éδ ¼«ªÑΓÑ ¿ß-
- »«½∞º«óáΓ∞ ÑÑ. ì¿ªÑ ñáÑΓß∩ ¬«Ñ-τΓ« ñ½∩ π»α᪡ѡ¿⌐ ß ¡áΦ¿¼
- ¡«óδ¼ ¬½áßß«¼:
-
-
- #include "painting.hpp"
- main() {
- Painting Bull("Ralph Picasso", "Bull & Doves",
- "Abstract Expressionism", "Bend Art Museum",
- 5,26,88, 495);
- Bull.information(); /* «íαáΘÑ¡¿Ñ ¬ Σπ¡¬µ¿¿-τ½Ñ¡π */
- Bull.print();
- /* «íαáΘÑ¡¿Ñ ¬ Σπ¡¬µ¿¿ ¿º íẫó«ú« ¬½áßßá */
- }
-
-
- ùΓ«íδ »«¬áºáΓ∞, ¬á¬ éδ ¼«ªÑΓÑ »α«ñ«½ªáΓ∞ φëà »α«µÑßß
- íÑ߬«¡Ñτ¡«, ß«ºñáñ¿¼ ¬½áßß ¿º Painting:
-
- /* öá⌐½ CUBIST.HPP */
- #include "painting.hpp"
- class Cubist : public Painting {
- int number_of_eyes; /* ... ¡á «ñ¡«⌐ ßΓ«α«¡Ñ ½¿µá */
- public:
- Cubist( char * artist, char * title, char * sty,
- int eyes, char * own, int m, int d,
- int y, int val);
- int eyes() { return number_of_eyes; }
- };
- Cubist::Cubist( char * artist, char * title, char * sty,
- int eyes, char * own, int m, int d,
- int y, int val)
- : (artist, title, sty, own, m, d, y, val) {
- number_of_eyes=eyes;
- }
- #include "cubist.hpp"
- main() {
- Cubist Only("Bob Dega", "I Only Have Eyes...",
- "early", 3, "Bend Art Museum", 1,14,88, 196);
- Only.information();
- cout << "This was from the "<< Only.eyes()
- << " eye period\n";
- }
-
- éδºδóáΓ∞ ¼«ª¡« ¬«¡ßΓαπ¬Γ«αδ Γ«½∞¬« ¡Ñ»«ßαÑñßΓóÑ¡¡«ú« íá-
- º«ó«ú« ¬½áßßá, ¡« ¡Ñ ¬½áßßá, ¿º ¬«Γ«α«ú« ¡áß½Ññ«óá¡ íẫóδ⌐
- ¬½áßß.
-
- eyes() ¡á»¿ßá¡á ¬á¬ «Γ¬αδΓá∩ (in-line). ¥Γ« πñ«í¡δ⌐ ¿
- φΣΣÑ¬Γ¿ó¡δ⌐ ß»«ß«í «»αÑñѽѡ¿∩ «τÑ¡∞ ¬«α«Γ¬¿σ Σπ¡¬µ¿⌐ (ß¼«Γ-
- α¿ in-line).
-
- ìᬫ¡Ñµ, á τΓ«, Ñß½¿ éδ ¡Ñ σ«Γ¿ΓÑ π¡áß½Ññ«óáΓ∞ ¬½áßß, ¡«
- ¿¼ÑÑΓÑ «íΩÑ¬Γ φΓ«ú« ¬½áßßá ó ¬áτÑßΓóÑ τ½Ñ¡á ßΓαπ¬Γπαδ éáΦÑú«
- ¬½áßßá? ìá»α¿¼Ñα, ¼δ σ«Γ¿¼ ¿ß»«½∞º«óáΓ∞ ¡áΦ ¬½áßß date ñ½∩
- σαá¡Ñ¡¿∩ ¡áτá½á ¿ ¬«¡µá «»αÑñѽѡ¡«ú« »Ñα¿«ñá Γó«ατÑßΓóá
- σπñ«ª¡¿¬á. ìáß½Ññ«óá¡¿Ñ ºñÑß∞ ¡Ñ αáí«ΓáÑΓ, Γᬠ¬á¬ ¼δ σ«Γ¿¼
- ¿ß»«½∞º«óáΓ∞ date ñóáªñδ. ÄΓóÑΓ ß«ßΓ«¿Γ ó ¿ß»«½∞º«óá¡¿¿
- «íΩÑ¬Γ«ó-τ½Ñ¡«ó:
-
- #include "cubist.hpp" /* óδΦÑ»α¿óÑñÑ¡¡δ⌐ »α¿¼Ñα */
- #include "date.hpp" /* «»¿ßá¡¿Ñ ¬½áßßá "date" */
- class CubistPeriod : Cubist {
- date beginning;
- date end;
- public: /* ÄΓ¼ÑΓ¿¼, ¬á¬ óδºδóáεΓß∩ íẫóδ⌐ ¬½áßß ¿
- ¬«¡ßΓαπ¬Γ«αδ «íΩÑ¬Γ«ó ñ« ½Ñó«⌐ Σ¿úπα¡«⌐ ߬«í¬¿ */
- CubistPeriod(char * artist, char * title, char * sty,
- int eyes, char * own, int m, int d, int y,
- int val, char * start, char * finish)
- : (artist, title, sty, eyesown, m, d, y, val),
- beginning(start), end (finish){}
- /* 쿪Ñß½ÑñπεΘá∩ Σπ¡¬µ¿∩, óÑα«∩Γ¡«, í«½∞ΦÑ, τѼ
- ß½Ññ«óὫ íδ «Γ¬αδΓ«⌐ (in-line) Σπ¡¬µ¿¿: */
- void All_info() { information();
- cout << "period starts: "; beginning.print();
- cout << "period ends: "; end.print();
- }
- };
- main() {
- CubistPeriod Dog ("Bob Dega", "Five-legged dog",
- "midlle", 2, "Bend Art Museum", 2, 24, 88, 399,
- "11/15/87", "2/25/88");
- Dog.All_info();
- }
-
- 諼»¿½∩Γ«α íπñÑΓ ñ«»π߬áΓ∞ º¡áτ¿Γѽ∞¡«Ñ ¬«½¿τÑßΓó« ¡Ñ»αá-
- ó¿½∞¡«ú« π»«ΓαÑí½Ñ¡¿∩ «Γ¬αδΓδσ Σπ¡¬µ¿⌐, ¡« «Γ¬áªÑΓß∩ ¬«¼»¿-
- ½¿α«óáΓ∞, Ñß½¿ «¡¿ «¬áªπΓß∩ ß½¿Φ¬«¼ í«½∞Φ¿¼¿ ¿½¿ ß½«ª¡δ¼¿.
- èᬠó¿ñ¿ΓÑ, óδº«ó ¬«¡ßΓαπ¬Γ«αá ñ½∩ «íΩѬΓá τ½Ñ¡á ¬½áßßá »«τ-
- Γ¿ Γᬫ⌐ ªÑ, ¬á¬ ¿ óδº«ó ¬«¡ßΓαπ¬Γ«αá ñ½∩ íẫó«ú« ¬½áßßá,
- ºá ¿ß¬½ετÑ¡¿Ñ¼ Γ«ú«, τΓ« ¡πª¡« ¡áºóáΓ∞ «íΩѬΓ.
-
-
- Å« «¬«¡τá¡¿¿ íẫó«ú« ¬παßá
-
- ìπ, ó«Γ éδ ¿ »α«Φ½¿ τÑαѺ óßÑ »αÑ»∩ΓßΓó¿∩ ¡áτá½∞¡«ú«
- ¬παßá »« C++. ô éáß ñ«ßΓáΓ«τ¡« «íαẵ«ó ñ½∩ Γ«ú«, τΓ«íδ ¡á-
- τáΓ∞ »¿ßáΓ∞ ßó«¿ ß«íßΓóÑ¡¡δÑ ¬½áßßδ. è«úñá éδ πó¿ñ¿ΓÑ, ¬á¬
- ½Ñú¬« φΓ« ñѽáÑΓß∩ ó C++, π éáß ó«º¡¿¬¡πΓ ¡«óδÑ ¿ í«½ÑÑ ß¼Ñ-
- ½δÑ ¿ñÑ¿ ¿ éδ ºáσ«Γ¿ΓÑ º¡áΓ∞, ¬á¬ ñѽáεΓß∩ óÑΘ¿, ¬«Γ«αδÑ ¼δ
- éá¼ ÑΘÑ ¡Ñ »«¬áºá½¿. æ½ÑñπεΘá∩ ú½áóá «Γ¬αδóáÑΓ í«½ÑÑ ú½πí«-
- ¬¿Ñ 󫺼«ª¡«ßΓ¿ C++.
-
-
- äá½∞¡Ñ⌐Φá∩ »«¼«Θ∞ ó αáí«ΓÑ
-
- èᬠó½áñѽѵ Zortech C++, éδ ¡áτ¡ÑΓÑ »«½πτáΓ∞ ú«ñ«óπε
- »«ñ»¿ß¬π Zortech C++ Newsletter, ¬á¬ Γ«½∞¬« »α¿Φ½ÑΓÑ ßó«ε
- αÑú¿ßΓαᵿε. åπα¡á½ ß«ñÑαª¿Γ ß«óÑΓδ »« »α«úαá¼¼¿α«óá¡¿ε,
- αạδÑ σ¿Γα«ßΓ¿ ¿ »«í«τ¡δÑ φΣΣѬΓδ »α¿ »«½∞º«óá¡¿¿
- Zortech C++, á Γá¬ªÑ ¿¡Σ«α¼áµ¿ε « ¡«óδσ αѽ¿ºáσ ¬«¼»¿½∩Γ«αá,
- »α«ñπ¬Γáσ ¡á C++ ¿ ñαπú¿Ñ »«½Ñº¡δÑ ¡«ó«ßΓ¿ »« C++.
-
- àß½¿ éδ ¡Ñ ∩ó½∩ÑΓÑß∞ ó½áñѽ∞µÑ¼ ¬«¼»¿½∩Γ«αá ¿½¿ éáΦá »«ñ-
- »¿ß¬á ºá¬«¡τ¿½áß∞, Γ« éδ ¼«ªÑΓÑ »«½πτ¿Γ∞ ѪÑú«ñ¡¿¬, «Γ»αáó¿ó
- 32 ñ«½½áαá ¿½¿ 15.75 Σπ¡Γ«ó ßΓÑ૨¡ú«ó ºá «ñ¡«ú«ñ«óπε »«ñ-
- »¿ß¬π ΦÑßΓ¿ ñóπσ¼Ñß∩τ¡δσ óδ»π߬«ó »« áñαÑßπ:
-
-
- ǼÑਪá àóα«»á
-
- Zortech C++ Newsletter Zortech C++ Newsletter
- 361 Massachussetts Ave 106-108 Powis St
- Arlington MA 02174 London SE18 6LU
-
- àß½¿ éδ »αÑñ½«ª¿ΓÑ ºá¼ÑΓ¬π, ¬«Γ«αá∩ íπñÑΓ «»πí½¿¬«óá¡á ó
- ß½ÑñπεΘѼ óδ»π߬Ñ, Γ« éδ »«½πτ¿ΓÑ ú«ñ«óπε »«ñ»¿ß¬π ¿ ß½Ññπε-
- Θπε óÑαß¿ε ¬«¼»¿½∩Γ«αá Zortech C++ íÑß»½áΓ¡«.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- üÄïàà æïÄåì¢ë C++
- ───────────────────
-
- ¥Γ«Γ αáºñѽ «»¿ßδóáÑΓ ¡Ñ¬«Γ«αδÑ ¿º í«½ÑÑ ú½πí«¬¿σ 󫺼«ª-
- ¡«ßΓÑ⌐ ∩ºδ¬á. 꺽«ªÑ¡¿Ñ ¼áΓÑα¿á½á ¡Ñ ß½ÑñπÑΓ αáßß¼áΓα¿óáΓ∞
- ¬á¬ »«½¡δ⌐ ß»αáó«τ¡¿¬, «¡« ñ«ßΓáΓ«τ¡« ½¿Φ∞ ñ½∩ «º¡á¬«¼½Ñ¡¿∩.
- äá½∞¡Ñ⌐Φ¿Ñ »«ñα«í¡«ßΓ¿ ¼«ª¡« ¡á⌐Γ¿, ¡á»α¿¼Ñα, ó ¬¡¿úáσ
- é¿¡Ñαá ¿ Å¿¡ß«¡á ¿½¿ æΓαáπßΓαá»á.
-
-
- é맮ó Σπ¡¬µ¿⌐-τ½Ñ¡«ó
-
- èᬠó¿ñ¡« ¿º »αÑñδñπΘÑú«, Ñß½¿ éδ ¿¼ÑÑΓÑ «íΩÑ¬Γ OBJ ¿ σ«-
- Γ¿ΓÑ óδºóáΓ∞ «ñ¡π ¿º Ñú« Σπ¡¬µ¿⌐-τ½Ñ¡«ó func(), éδ »α«ßΓ«
- ú«ó«α¿ΓÑ OBJ.func(). ùΓ«, Ñß½¿ éδ «»αÑñѽ∩ÑΓÑ Σπ¡¬µ¿ε-τ½Ñ¡
- ¬½áßßá ¿ σ«Γ¿ΓÑ óδºóáΓ∞ ñαπúπε Σπ¡¬µ¿ε-τ½Ñ¡ ¬½áßßá? è«úñá éδ
- ¡áσ«ñ¿ΓÑß∞ ó¡πΓα¿ Σπ¡¬µ¿¿-τ½Ñ¡á, óßÑúñá »αÑñ»«½áúáÑΓß∩, τΓ«
- éδ αáí«ΓáÑΓÑ ß «íΩÑ¬Γ«¼, ¬«Γ«αδ⌐ ÑΘÑ ¡Ñ ¿¼ÑÑΓ ¿¼Ñ¡¿ - ¿¼Ñ¡«-
- óá¡¿Ñ ¡Ñ »«∩ó½∩ÑΓß∩ ñ« ΓÑσ »«α, »«¬á «íΩÑ¬Γ ¡Ñ «íΩ∩ó½∩ÑΓß∩.
- ä½∩ ó맮óá Σπ¡¬µ¿¿-τ½Ñ¡á ¬½áßßá ¿º ñαπú«⌐ Σπ¡¬µ¿¿-τ½Ñ¡á
- »α«ßΓ« ó맮ó¿ΓÑ φΓπ Σπ¡¬µ¿ε íѺ π¬áºá¡¿∩ «íΩѬΓá, ßó∩ºá¡¡«ú«
- ß ¡Ñ⌐, Γ.Ñ.: func().
-
-
- è«¡ßΓá¡Γδ
-
- ä½∩ ß«ºñá¡¿∩ ¬«¡ßΓá¡Γ¡δσ º¡áτÑ¡¿⌐ ó «íδτ¡«¼ C éδ ¿ß»«½∞-
- º«ó὿ »αÑ»α«µÑßß«α, ¡á»α¿¼Ñα: #define A 10. è ß«ªá½Ñ¡¿ε,
- ¬«úñá »αÑ»α«µÑßß«α ºáóÑαΦáÑΓß∩, ºá¼Ñ¡∩∩ ¬áªñ«Ñ óσ«ªñÑ¡¿Ñ
- A ¡á 10, ¬«¼»¿½∩Γ«α ¡Ñ ¿¼ÑÑΓ ºá»¿ß¿ «í A ¿ ¡Ñ ¼«ªÑΓ óδñáΓ∞
- éá¼ ¬á¬«ú«-½¿í« ß««íΘÑ¡¿∩ ß ¿ñÑ¡Γ¿Σ¿¬áΓ«α«¼ A, τΓ« º¡áτ¿-
- Γѽ∞¡« «ß½«ª¡∩ÑΓ «Γ½áñ¬π »α«úαá¼¼δ.
-
- C++ ó¬½ετáÑΓ »«¡∩Γ¿Ñ ¬«¡ßΓá¡Γδ (const), const ºáßΓáó-
- ½∩ÑΓ ¬«¼»¿½∩Γ«α ¬«¡Γα«½¿α«óáΓ∞ ¿ ºá»αÑΘáΓ∞ ½εíπε 󫺼«ª¡πε
- ¼«ñ¿Σ¿¬áµ¿ε º¡áτÑ¡¿∩. é »α¿óÑñÑ¡¡«¼ óδΦÑ ß½πτáÑ: const
- int A=10. è«¡ßΓá¡Γδ ¡á¼¡«ú« í«½ÑÑ ú¿í¬«Ñ ßαÑñßΓó«, τѼ «»Ñ-
- αáΓ«α #define; «¡¿ »«¡¿¼áεΓ '«í½áßΓ∞ ñÑ⌐ßΓó¿∩' ('scoping',
- ß¼«Γα¿ΓÑ αáºñѽ 'Äí½áßΓ∞ ñÑ⌐ßΓó¿∩'), ¼«ª¡« «íΩ∩ó¿Γ∞
- «íΩѬΓ-¬«¡ßΓá¡Γπ ¿½¿ »ÑαÑñáΓ∞ ¬«¡ßΓá¡Γ¡δÑ »áαá¼ÑΓαδ Σπ¡¬µ¿-
- ∩¼. Zortech C++ Γαá¡ß½∩Γ«α ¼«ªÑΓ π½πτΦ¿Γ∞ »«α«ªñáѼδ⌐ ¬«ñ,
- Ñß½¿ «¡ º¡áÑΓ, τΓ« ¡ÑτΓ« ∩ó½∩ÑΓß∩ ¬«¡ßΓá¡Γ«⌐.
-
- 諼¼Ñ¡Γáα¿¿
-
- C++ ¿¼ÑÑΓ ñóá Γ¿»á ¬«¼¼Ñ¡Γáα¿Ñó: «íδτ¡δ⌐ ¬«¼¼Ñ¡Γáα¿⌐
- C /* ¿ */ ¿ ¡«óδ⌐ Γ¿» ¬«¼¼Ñ¡Γáα¿∩, ¬«Γ«αδ⌐ »α«ñ«½ªáÑΓß∩ ñ«
- ¬«¡µá ßΓ᫬¿:
-
- int a = 4; //¬«¼¼Ñ¡Γáα¿⌐ Γ«½∞¬« ñ« ¬«¡µá φΓ«⌐ ßΓ᫬¿
-
-
- î¡«ú«¬αáΓ¡δÑ ó¬½ετÑ¡¿∩ Σá⌐½«ó-ºáú«½«ó¬«ó
-
- éß∩¬¿⌐ αáº, ¬«úñá éδ ¿ß»«½∞ºπÑΓÑ ¬½áßß, ¡Ñ«íσ«ñ¿¼« ó¬½ε-
- τáΓ∞ Σá⌐½ ºáú«½«ó¬«ó, ¬«Γ«αδ⌐ «íΩ∩ó½∩ÑΓ φëà ¬½áßß. Æá¬ ¬á¬
- ¡Ñ¬«Γ«αδÑ ¬½áßßδ »«α«ªñáεΓ ¿½¿ ¿ß»«½∞ºπεΓ ñαπú¿Ñ ¬½áßßδ,
- Σá⌐½δ ºáú«½«ó¬«ó ¿º «ñ¡«ú« ¬½áßßá ¼«úπΓ ó¬½ετáΓ∞ ó ßÑí∩ Σá⌐-
- ½δ ºáú«½«ó¬«ó ¿º ñαπú«ú« ¬½áßßá ¿ éδ ¼«ªÑΓÑ «¬áºáΓ∞ß∩ ó ¡Ñ-
- ñ«»πßΓ¿¼«⌐ ß¿Γπᵿ¿, ¬«úñá «ñ¿¡ ¿ ëà ªÑ ßá¼δ⌐ Σá⌐½ ºáú«½«ó-
- ¬«ó ó¬½ετáÑΓß∩ í«½ÑÑ «ñ¡«ú« αáºá. 諼»¿½∩Γ«α ¡Ñ ñ«»π߬áÑΓ
- »«óΓ«α¡«ú« «íΩ∩ó½Ñ¡¿∩ Γ«ú« ªÑ ßἫú« ¬½áßßá ¿ ß««íΘáÑΓ «í
- φΓ«¼ ¬á¬ «í «Φ¿í¬Ñ.
-
- ÄíΘÑ»α¿¡∩Γδ¼ ñ½∩ »αÑñ«ΓóαáΘÑ¡¿∩ «íΩ∩ó½Ñ¡¿∩ ¬½áßßá í«½ÑÑ
- «ñ¡«ú« αáºá ∩ó½∩ÑΓß∩ ¿ß»«½∞º«óá¡¿Ñ »αÑ»α«µÑßß«αá. ¥Γ« αÑá-
- ½¿ºπÑΓß∩ ß«ºñ᡿Ѽ ߻ѵ¿á½∞¡«⌐ »ÑαѼѡ¡«⌐ »αÑ»α«µÑßß«αá ñ½∩
- ¬áªñ«ú« ó¬½ετáѼ«ú« Σá⌐½á. é ¬áτÑßΓóÑ ¿¼Ñ¡¿ »ÑαѼѡ¡«⌐ ¿ß-
- »«½∞ºπÑΓß∩ ¿¼∩ Σá⌐½á, óßÑ íπ¬óδ ¬«Γ«α«ú« ºáú½áó¡δÑ ¿ ¡Ñ ß«-
- ñÑαªáΓ ß¿¼ó«½á '.' (ANSI C ¡Ñ αáºαÑΦáÑΓ ¿ß»«½∞º«óá¡¿Ñ ß¿¼ó«-
- ½á '.' ó ¿¼Ñ¡áσ »ÑαѼѡ¡δσ). ū߼«Γα¿ΓÑ »α¿¼Ñα ñ½∩ Σá⌐½á
- "CHAIR.HPP":
-
- #ifndef CHAIRHPP
- #define CHAIRHPP
- class chair { // «íΩ∩ó½Ñ¡¿Ñ ¬½áßßá chair
- };
- #endif CHAIRHPP
-
- ÄíΩ∩ó½Ñ¡¿Ñ ¬½áßßá chair ó¬½ετáÑΓß∩ Γ«½∞¬«, Ñß½¿ »ÑαѼѡ-
- ¡á∩ CHAIRHPP ¡Ñ íδ½á αá¡ÑÑ «»αÑñѽѡá.
-
-
- Äí½áßΓ∞ ñÑ⌐ßΓó¿∩
-
- Åαáó¿½á «í½áßΓ¿ ñÑ⌐ßΓó¿∩ (scoping rules) «»αÑñѽ∩εΓ τáßΓ¿
- »α«úαá¼¼δ, úñÑ »ÑαѼѡ¡á∩ ñÑ⌐ßΓó¿Γѽ∞¡á. ¥Γ¿ τáßΓ¿ αáºñѽ∩-
- εΓß∩ «Γ¬αδóáεΘÑ⌐ ¿ ºá¬αδóáεΘÑ⌐ Σ¿úπα¡δ¼¿ ߬«í¬á¼¿ ({ ¿ }).
-
- ùΓ«íδ πó¿ñÑΓ∞, ¬«úñá »ÑαѼѡ¡á∩ óδσ«ñ¿Γ ¿º «í½áßΓ¿ ñÑ⌐ßΓ-
- ó¿∩ (ßΓá¡«ó¿Γß∩ ¡ÑñÑ⌐ßΓó¿Γѽ∞¡«⌐), ¡á⌐ñ¿ΓÑ í½¿ªá⌐Φπε Σ¿úπα-
- ¡πε «Γ¬αδóáεΘπε ߬«í¬π »ÑαÑñ «íΩ∩ó½Ñ¡¿Ñ¼ φΓ«⌐ »ÑαѼѡ¡«⌐ ¿
- ºáΓѼ ¡á⌐ñ¿ΓÑ ß««ΓóÑΓßΓóπεΘπε Ñ⌐ ºá¬αδóáεΘπε ߬«í¬π. ÅÑαÑ-
- ¼Ñ¡¡á∩ óδσ«ñ¿Γ ¿º «í½áßΓ¿ ñÑ⌐ßΓó¿∩ »«ß½Ñ »α«σ«ªñÑ¡¿∩
- /»α¿ ¿ß»«½¡Ñ¡¿¿/ ºá¬αδóáεΘÑ⌐ ߬«í¬¿. àß½¿ »ÑαѼѡ¡á∩ ∩ó½∩ÑΓ-
- ß∩ «íΩÑ¬Γ«¼ ¡Ñ¬«Γ«α«ú« ¬½áßßá, Γ« »α¿ óδσ«ñÑ ¿º «í½áßΓ¿
- ñÑ⌐ßΓó¿∩ íπñÑΓ óδºóá¡ ÑÑ ñÑßΓαπ¬Γ«α (Ñß½¿ Γᬫó«⌐ «»αÑñѽѡ).
-
- é «íδτ¡«¼ C óßÑ »ÑαѼѡ¡δÑ ñ«½ª¡δ íδΓ∞ «íΩ∩ó½Ñ¡δ ó ¡áτá½Ñ
- «í½áßΓ¿ ñÑ⌐ßΓó¿∩, ßαáºπ »«ß½Ñ «Γ¬αδóáεΘÑ⌐ ߬«í¬¿ ¿ »ÑαÑñ ½ε-
- íδ¼ «»ÑαáΓ«α«¼. é C++ éδ ¼«ªÑΓÑ «íΩ∩ó½∩Γ∞ »ÑαѼѡ¡δÑ ó ¼ÑßΓÑ
- ¿σ ¿ß»«½∞º«óá¡¿∩. Å«ñσ«ñ∩Θ¿¼ »α¿¼Ñα«¼ ß½πª¿Γ ßτÑΓτ¿¬ µ¿¬½á
- for :
-
- ...
- for (int i = 0; i<100; i++)
- for (int j = 0; j<100; j++)
- // ºñÑß∞ óδ»«½¡∩ÑΓß∩ αáí«Γá
-
- çá¼ÑΓ∞ΓÑ, τΓ« ¼«ª¡« «íΩ∩ó½∩Γ∞ ¿ ¿¡¿µ¿á½¿º¿α«óáΓ∞ »ÑαÑ-
- ¼Ñ¡¡πε «ñ¡«óαѼѡ¡«.
-
-
- ÄΓ¬αδΓδÑ (inline) Σπ¡¬µ¿¿
-
- æπΘÑßΓóπÑΓ ¼¡«ú« ß¿Γπᵿ⌐, ¬«úñá éá¼ ¡πª¡« ߬αδΓ∞ ¡Ñ¬«Γ«-
- απε ß½«ª¡«ßΓ∞ »α«úαá¼¼¿α«óá¡¿∩ »πΓѼ π»α∩Γδóá¡¿∩ ¡Ñí«½∞Φ«⌐
- τáßΓ¿ »α«úαá¼¼δ ó ó맮ó Σπ¡¬µ¿¿ (φΓ« Γá¬ªÑ »«ºó«½¿Γ éá¼ ¿ß-
- »«½∞º«óáΓ∞ ¿¼∩, ¬«Γ«α«Ñ ¼«ªÑΓ ßñѽáΓ∞ í«½ÑÑ «ß¼δ߽ѡ¡δ¼ τΓÑ-
- ¡¿Ñ »α«úαá¼¼δ). è ß«ªá½Ñ¡¿ε, ó맮óδ Σπ¡¬µ¿⌐ óÑñπΓ ¬ «»αÑñÑ-
- ½Ñ¡¡δ¼ ¡á¬½áñ¡δ¼ αáßσ«ñá¼, τΓ« τáßΓ« ∩ó½∩ÑΓß∩ ¡ÑªÑ½áΓѽ∞¡δ¼.
-
- C++ «íΩÑñ¿¡∩ÑΓ ½πτΦÑÑ ¿º ñóπσ »«ñσ«ñ«ó »α¿ »«¼«Θ¿ «Γ¬αδ-
- Γδσ Σπ¡¬µ¿⌐. ÄíΩ∩ó½∩∩ Σπ¡¬µ¿ε «Γ¬αδΓ«⌐, éδ ºáßΓáó½∩ÑΓÑ ¬«¼-
- »¿½∩Γ«α ºá¼Ñ¡¿Γ∞ óßÑ ó맮óδ Σπ¡¬µ¿⌐ ¬«ñ«¼ «Γ¬αδΓ«⌐ Σπ¡¬µ¿¿
- (¬á¬ Ñß½¿ íδ éδ ¿ß»«½∞º«ó὿ »αÑ»α«µÑßß«α).
-
- ÄΓ¬αδΓδÑ Σπ¡¬µ¿¿ «íδτ¡« ßτ¿ΓáεΓß∩ Ññ¿¡ßΓóÑ¡¡δ¼¿ '»α¿Ñ¼½Ñ-
- ¼δ¼¿' «»αÑñѽѡ¿∩¼¿ ñ½∩ »«∩ó½Ñ¡¿∩ ó Σá⌐½áσ ºáú«½«ó¬«ó. Ä¡¿
- ñ«½ª¡δ íδΓ∞ ¬αáΓ¬¿¼¿. ÄΓ¬αδΓδÑ Σπ¡¬µ¿¿ C++ ñ«½ª¡δ ¿ß»«½∞º«-
- óáΓ∞ß∩ ó ¼ÑßΓáσ, úñÑ ó «íδτ¡«¼ C ¿ß»«½∞º«ó὿ß∞ «»ÑαáΓ«αδ
- #define ñ½∩ ºá¼Ñ¡δ ¡Ñí«½∞Φ«⌐ τáßΓ¿ ¬«ñá. Åα¿¼Ñαδ íπñπΓ ó
- ß½ÑñπεΘѼ »áαáúαáΣÑ.
-
-
- öπ¡¬µ¿¿ ñ«ßΓπ»á
-
- Äíδτ¡« ñá¡¡δÑ, ß«ßΓáó½∩εΘ¿Ñ «íΩÑ¬Γ ¡Ñ¬«Γ«α«ú« ¬½áßßá,
- «íΩ∩ó½∩εΓß∩ ¬á¬ '»α¿óáΓ¡δÑ' (private); φΓ« «º¡áτáÑΓ, τΓ« éδ
- ¡Ñ ¼«ªÑΓÑ ¿ºó½Ñτ∞ ¿σ ¿ ¿ß»«αΓ¿Γ∞ ºá ¿ß¬½ετÑ¡¿Ñ¼ ß½πτá∩, ¬«ú-
- ñá »α«úαá¼¼¿ßΓ ß»Ñµ¿á½∞¡δ¼ «íαẫ¼ ñáÑΓ éá¼ ¡á φΓ« αáºαÑΦÑ-
- ¡¿Ñ (Γ.Ñ. éδ ñ«½ª¡δ ¿ß»«½∞º«óáΓ∞ Σπ¡¬µ¿¿ τ½Ñ¡δ ¬½áßßá ¿½¿
- Σπ¡¬µ¿¿ 'ñαπº∞∩'). ùáßΓ«, «ñ¡á¬«, éá¼ ¡πª¡« »α«τ¿ΓáΓ∞ ¬«¡¬-
- αÑΓ¡δÑ º¡áτÑ¡¿∩ ¿º «íΩѬΓá. é¼ÑßΓ« Γ«ú«, τΓ«íδ ñѽáΓ∞ φΓ¿
- º¡áτÑ¡¿∩ «íΘ¿¼¿ (τΓ« «º¡áτáÑΓ, τΓ« ½εí«⌐ ¼«ªÑΓ ¿σ ¿º¼Ñ¡¿Γ∞),
- ½πτΦÑ ¡á»¿ßáΓ∞ Σπ¡¬µ¿¿ ñ«ßΓπ»á, ¬«Γ«αδÑ ó«ºóαáΘáεΓ º¡áτÑ¡¿Ñ,
- ¡« ¡Ñ ñ«»π߬áεΓ ¿º¼Ñ¡Ñ¡¿∩ ¿ºó¡Ñ φΓ«ú« º¡áτÑ¡¿∩ ó «íΩѬΓÑ.
- öπ¡¬µ¿¿ ñ«ßΓπ»á ∩ó½∩εΓß∩, 󫺼«ª¡«, ¡á¿í«½ÑÑ αáß»α«ßΓαá¡Ñ¡-
- ¡δ¼ ¿ß»«½∞º«ó᡿Ѽ «Γ¬αδΓ«ú« ¬«ñá.
-
- Åα¿¼Ñα:
-
- #include <stream.h> // ΓÑ»Ñα∞ ¼«ª¡« ¿ß»«½∞º«óáΓ∞ »«Γ«¬
- class insect {
- int legs;
- int eyes;
- int flight;
- public: // óßÑ «»¿ßá¡¡«Ñ óδΦÑ »α¿óáΓ¡«
- // «Γ¬αδΓδ⌐ ¬«¡ßΓαπ¬Γ«α
- insect(int l, int e, int f)
- {legs=l; eyes=e; flight=f;}
- // ¡Ñ߬«½∞¬« «Γ¬αδΓδσ Σπ¡¬µ¿⌐ ñ«ßΓπ»á
- int number_of_legs() {return legs;}
- int number_of_eyes() {return eyes;}
- int does_it_fly() {return flight;}
- };
- main() {
- insect bug(7,9,1);
- cout << bug.does_it_fly();
- }
-
- çá¼ÑΓ∞ΓÑ, τΓ« éá¼ ¡Ñ ¡πª¡« «íΩ∩ó½∩Γ∞ Σπ¡¬µ¿ε «Γ¬αδ-
- Γ«⌐, Ñß½¿ «¡á ∩ó½∩ÑΓß∩ τáßΓ∞ε «íΩ∩ó½Ñ¡¿∩ ¬½áßßá;
- φΓ« »«ñαáºπ¼ÑóáÑΓß∩ áóΓ«¼áΓ¿τÑ߬¿.
-
-
- 信ἿτÑ߬«Ñ αáß»αÑñѽѡ¿Ñ »á¼∩Γ¿
-
- ê¼ÑÑΓß∩ ñóá ß»«ß«íá »«½πτÑ¡¿∩ »á¼∩Γ¿ ó C++. Åα¿ «íΩ∩ó½Ñ-
- ¡¿¿ »ÑαѼѡ¡δσ ¿¼ «Γó«ñ¿Γß∩ ¼ÑßΓ« ó ßΓѬÑ, »α«ñó¿ªÑ¡¿Ñ¼ 󡿺
- π¬áºáΓѽ∩ ßΓѬá. è«úñá »ÑαѼѡ¡δÑ óδσ«ñ∩Γ ºá «í½áßΓ∞ «»αÑñÑ-
- ½Ñ¡¿∩, »á¼∩Γ∞ ¿º-»«ñ ¡¿σ «ßó«í«ªñáÑΓß∩ áóΓ«¼áΓ¿τÑ߬¿, ñó¿ªÑ-
- ¡¿Ñ¼ óóÑασ π¬áºáΓѽ∩ ßΓѬá. ÉẼÑα αẼÑΘáѼ«⌐ ó ßΓÑ¬Ñ »á¼∩-
- Γ¿ ñ«½ªÑ¡ óßÑúñá íδΓ∞ ¿ºóÑßΓÑ¡ ó« óαѼ∩ ¬«¼»¿½∩µ¿¿. àß½¿
- ¡πª¡« ß«ºñáΓ∞ »ÑαѼѡ¡πε, αẼÑα ¬«Γ«α«⌐ ¡Ñ¿ºóÑßΓÑ¡ »α¿ ¬«¼-
- »¿½∩µ¿¿, ß½ÑñπÑΓ ó »α«úαá¼¼Ñ »«ºáí«Γ¿Γ∞ß∩ «í «ΓóÑñÑ¡¿¿ φΓ«⌐
- »á¼∩Γ¿ ó ¬πτÑ (heap), ¡áºδóáѼ«⌐ Γá¬ªÑ ßó«í«ñ¡«⌐ »á¼∩Γ∞ε
- (free store). èπτπ ¼«ª¡« »αÑñßΓáó½∩Γ∞ ¬á¬ ºá¡¿¼áεΘπε ñ¡«
- »α«ßΓαá¡ßΓóá »á¼∩Γ¿ »α«úαá¼¼δ ¿ αáßΓπΘπε óóÑασ, ó Γ« óαѼ∩
- ¬á¬ ßΓѬ ºá¡¿¼áÑΓ óÑαΦ¿¡π ¿ αáßΓÑΓ ó¡¿º.
-
- ¡« ºá¡¿¼áΓ∞ ¿ «ßó«í«ªñáΓ∞ »á¼∩Γ∞ ó ¬πτÑ ó ½εí«⌐ Γ«τ¬Ñ
- »α«úαá¼¼δ. é᪡« »«¡∩Γ∞, τΓ« αẼÑΘáѼá∩ ó ¬πτÑ »á¼∩Γ∞ ¡Ñ
- »«ñτ¿¡∩ÑΓß∩ »αáó¿½á¼ «í½áßΓ¿ «»αÑñѽѡ¿∩, ó «Γ½¿τ¿Ñ «Γ ñαπ-
- ú¿σ »ÑαѼѡ¡δσ (φΓ« »«½Ñº¡á∩ 󫺼«ª¡«ßΓ∞ - ß¼«Γα¿ΓÑ »áαáúαáΣ
- æß佬¿). ¥Γ¿ »ÑαѼѡ¡δÑ ¡¿¬«úñá ¡Ñ «¬áºδóáεΓß∩ ó¡Ñ «í½áßΓ¿
- «»αÑñѽѡ¿∩. Æá¬ τΓ« ºá¡∩ó »á¼∩Γ∞ ó ¬πτÑ, ß½ÑñπÑΓ ßἫ¼π »«-
- ºáí«Γ¿Γ∞ß∩ « ÑÑ «ßó«í«ªñÑ¡¿¿. àß½¿ »α«ñ«½ªáΓ∞ ºá¡¿¼áΓ∞
- »á¼∩Γ∞ ó ¬πτÑ, ¡Ñ «ßó«í«ªñá∩ ÑÑ, Γ« »α«úαá¼¼á (¼¿ßΓ¿τÑ߬¿¼
- «íαẫ¼) ß½«¼áÑΓß∩. ü«½∞Φ¿¡ßΓó« C »á¬ÑΓ«ó ¿¼ÑεΓ í¿í½¿«ΓÑτ¡δÑ
- Σπ¡¬µ¿¿ (¡á»α¿¼Ñα, malloc(), free()), «íÑß»Ñτ¿óáεΘ¿Ñ αáí«Γπ
- ß ñ¿¡á¼¿τÑ߬¿¼ «ΓóÑñÑ¡¿Ñ¼ »á¼∩Γ¿, ¡« ó C++ «¡á, ¬á¬ ñ«ßΓá-
- Γ«τ¡« ó᪡á∩, ∩ó½∩ÑΓß∩ τáßΓ∞ε ∩ºδ¬á. C++ ¿ß»«½∞ºπÑΓ «»Ñαá-
- µ¿¿ new ¿ delete ñ½∩ «ΓóÑñÑ¡¿∩ ¿ «ßó«í«ªñÑ¡¿∩ ñ¿¡á¼¿τÑ߬«⌐
- »á¼∩Γ¿. Çαúπ¼Ñ¡Γ new - óδαáªÑ¡¿Ñ, ºáñáεΘÑÑ τ¿ß½« íá⌐Γ«ó ó
- «Γó«ñ¿¼«⌐ »á¼∩Γ¿ (¥Γ« óδαáªÑ¡¿Ñ ß«ßΓ«¿Γ ¿º ¿¼Ñ¡¿ Γ¿»á ¿,
- 󫺼«ª¡«, ß½ÑñπεΘÑú« ºá ¡¿¼ ó ¬óáñαáΓ¡δσ ߬«í¬áσ τ¿ß½á: τ¿ß-
- ½á φ½Ñ¼Ñ¡Γ«ó φΓ«ú« Γ¿»á, ¬«Γ«αδÑ ¡πª¡« αẼÑßΓ¿Γ∞.); ó«ºóαá-
- ΘáѼ«Ñ º¡áτÑ¡¿Ñ - π¬áºáΓѽ∞ ¡á ¡áτὫ í½«¬á »á¼∩Γ¿. Çαúπ¼Ñ¡-
- Γ«¼ delete ∩ó½∩ÑΓß∩ ¡áτá½∞¡δ⌐ áñαÑß í½«¬á »á¼∩Γ¿, ¬«Γ«απε
- ¡πª¡« «ßó«í«ªñáΓ∞ (ëà ßá¼δ⌐ áñαÑß, ¬«Γ«αδ⌐ íδ½ αá¡ÑÑ »«ß-
- Γáó½Ñ¡ new). ÅαÑñ»«½«ª¿¼, ¼δ σ«Γ¿¼, ¿¼Ñ∩ ¡Ñ¬«Γ«αδÑ µÑ½δÑ x
- ¿ y, ß«ºñáΓ∞ ¼áΓα¿µπ ¿º x ¡á y »½áóáεΘ¿σ τ¿ßѽ (float);
- Γ«úñá
-
- float * mat = new float[x*y];
-
- αẼÑßΓ¿Γ Γá¬πε ¼áΓα¿µπ, á
-
- delete mat;
-
- «ßó«í«ñ¿Γ »á¼∩Γ∞. ¡« »α«ñ«½ªáΓ∞ ¿ß»«½∞º«óá¡¿Ñ »á¼∩Γ¿ »«ß-
- ½Ñ ÑÑ «ßó«í«ªñÑ¡¿∩ ¿½¿ «ßó«í«ñ¿Γ∞ ÑÑ í«½ÑÑ «ñ¡«ú« αáºá - «íá
- óáα¿á¡Γá ∩ó½∩εΓß∩ «Φ¿í«τ¡δ¼¿ ¿ ¼«úπΓ »α¿ó«ñ¿Γ∞ ¬ Γαπñ¡« «í-
- ¡áαπª¿óáÑ¼δ¼ «Φ¿í¬á¼.
-
-
- è«¡ßΓαπ¬Γ«αδ ¿ ñÑßΓαπ¬Γ«αδ
-
- ïεí«⌐ Γ¿» ñá¡¡δσ ¼«ªÑΓ íδΓ∞ ¿¡¿µ¿á½¿º¿α«óá¡ «»αÑñѽѡ¡δ¼¿
- ß»«ß«íἿ, τΓ« óδ»«½¡∩ÑΓß∩ »α¿ ¿ß»«½¡Ñ¡¿¿ Ñú« «»¿ßá¡¿∩, ¿
- ¼«ªÑΓ íδΓ∞ «τ¿ΘÑ¡, ¬«úñá π»αáó½Ñ¡¿Ñ »«¬¿ñáÑΓ Ñú« «í½áßΓ∞ «»-
- αÑñѽѡ¿∩. è«úñá ó C++ ß«ºñáεΓß∩ ¡«óδÑ Γ¿»δ ñá¡¡δσ, φΓ¿ ¿¡¿-
- µ¿á½¿ºáµ¿∩ ¿ «τ¿ΘÑ¡¿Ñ óδ»«½¡∩εΓß∩ »«ßαÑñßΓó«¼ ¬«¡ßΓαπ¬Γ«α«ó
- ¿ ñÑßΓαπ¬Γ«α«ó.
-
- 諼»¿½∩Γ«α áóΓ«¼áΓ¿τÑ߬¿ ßΓáó¿Γ «íαáΘÑ¡¿Ñ ¬ ß««ΓóÑΓßΓóπε-
- ΘÑ¼π ¬«¡ßΓαπ¬Γ«απ »α¿ ¿ß»«½¡Ñ¡¿¿ «»¿ßá¡¿∩ ¿ ¬ ñÑßΓαπ¬Γ«απ -
- »α¿ óδσ«ñÑ «íΩѬΓá ¿º ßó«Ñ⌐ «í½áßΓ¿ «»αÑñѽѡ¿∩.
- Åα¿¼Ñαδ ¿¡¿µ¿á½¿ºáµ¿¿ ó¬½ετáεΓ πßΓá¡«ó¬π »ÑαѼѡ¡δσ ó
- ¿ºóÑßΓ¡δÑ º¡áτÑ¡¿∩, «ΓóÑñÑ¡¿Ñ »á¼∩Γ¿ ó ¬πτÑ, ¬«»¿α«óá¡¿Ñ
- º¡áτÑ¡¿⌐ ¿º ñαπú«ú« «íΩѬΓá ¿ í«½ÑÑ ¡Ñ«íδτ¡δÑ αáí«Γδ, ßó∩-
- ºá¡¡δÑ ß« ßó«Ñ«íαếѼ Γ¿»«ó, ¬«Γ«αδÑ ¼«ª¡« ß«ºñáΓ∞ ¡á C++
- (¡á»α¿¼Ñα, α¿ß«óá¡¿Ñ «¬¡á, «τ¿ΘÑ¡¿Ñ «τÑαÑñ¿ ¿½¿ ¿¡¿µ¿á½¿ºá-
- µ¿∩ »«ß½Ññ«óáΓѽ∞¡«ú« »«αΓá). Åα¿¼ÑαἿ «τ¿ΘÑ¡¿∩ ¼«úπΓ ß½π-
- ª¿Γ∞ ó«ºóαáΓ »á¼∩Γ¿ ó ¬πτÑ, πñá½Ñ¡¿Ñ «¬¡á ß φ¬αá¡á ¿ Γ.».
- ä½∩ ¬áªñ«ú« ¬½áßßá ¼«ªÑΓ íδΓ∞ ¡Ñ߬«½∞¬« ¬«¡ßΓαπ¬Γ«α«ó
- («Γ½¿τáεΘ¿σß∩ ß»¿ß¬á¼¿ »áαá¼ÑΓα«ó) ¡« Γ«½∞¬« «ñ¿¡ ñÑßΓαπ¬-
- Γ«α. äÑßΓαπ¬Γ«αδ ¡Ñ ¿¼ÑεΓ »áαá¼ÑΓα«ó. è«¡ßΓαπ¬Γ«αδ ¿¼ÑεΓ Γ«
- ªÑ ¿¼∩, τΓ« ¿ ¬½áßß. ê¼∩ ñÑßΓαπ¬Γ«αá ¡áτ¿¡áÑΓß∩ ß Γ¿½∞ñδ (~),
- ºá ¬«Γ«α«⌐ ß½ÑñπÑΓ ¿¼∩ ¬½áßßá. é«Γ ¡Ñ߬«½∞¬« »α¿¼Ñα«ó «íΩ∩ó-
- ½Ñ¡¿⌐ ¬«¡ßΓαπ¬Γ«α«ó ¿ ñÑßΓαπ¬Γ«αá:
-
- class matrix { //ñá¡¡δÑ ¼áΓα¿µδ
- public:
- matrix(); /* íѺ »áαá¼ÑΓα«ó */
- matrix(matrix &); /* ¿¡¿µ¿á½¿ºáµ¿∩ ¬«»¿α«ó᡿Ѽ */
- matrix(int i, int j, int a);
- matrix(int i, int j, float a);
- ~matrix(); /* ñÑßΓαπ¬Γ«α */
- // ñαπú¿Ñ «íΩ∩ó½Ñ¡¿∩ ¬½áßßá matrix
- };
-
- ä½∩ »α«ßΓδσ ¬½áßß«ó ¬«¡ßΓαπ¬Γ«αδ ¿ ñÑßΓαπ¬Γ«αδ ¡Ñ óßÑúñá
- ¡Ñ«íσ«ñ¿¼δ. àß½¿ ¬½áßß íếαπÑΓß∩ ¡á ßΓÑ¬Ñ (¡ÑΓ »á¼∩Γ¿,
- «Γó«ñ¿¼«⌐ ó ¬πτÑ), ¡Ñ ΓαÑíπÑΓ ¿¡¿µ¿á½¿ºáµ¿¿ »ÑαѼѡ¡δσ ¿
- »ÑαÑñáÑΓß∩ Σπ¡¬µ¿∩¼ Γ«½∞¬« »« ßßδ½¬Ñ (»ÑαÑñáτá »« º¡áτÑ¡¿ε
- ΓαÑíπÑΓ ¿¡¿µ¿á½¿ºáµ¿¿ ¬«»¿α«ó᡿Ѽ), Γ« ¬«¡ßΓαπ¬Γ«α, óÑα«∩Γ-
- ¡«, ¡Ñ ¡πªÑ¡.
- è«ñ ¬«¡ßΓαπ¬Γ«α«ó ¿ ñÑßΓαπ¬Γ«α«ó Γᬫ⌐ ªÑ, ¬á¬ ¿ π ñαπú¿σ
- Σπ¡¬µ¿⌐ τ½Ñ¡«ó, ºá ¡Ñí«½∞Φ¿¼¿ ¿ß¬½ετÑ¡¿∩¼¿. è«¡ßΓαπ¬Γ«α
- áóΓ«¼áΓ¿τÑ߬¿ ó«ºóαáΘáÑΓ this (π¬áºáΓѽ∞ ¡á «íΩѬΓ; τÑαѺ
- φëà π¬áºáΓѽ∞ »α«úαá¼¼¿απÑΓß∩ ¿¡¿µ¿á½¿ºáµ¿∩ ¿ »α¿ßóá¿óá¡¿Ñ),
- á ñÑßΓαπ¬Γ«α ¡Ñ ó«ºóαáΘáÑΓ ¡¿¬á¬«ú« º¡áτÑ¡¿∩. ìÑ ß½ÑñπÑΓ
- π¬áºδóáΓ∞ ¡¿¬á¬«ú« ó«ºóαáΘáѼ«ú« º¡áτÑ¡¿∩ ¡¿ ó «íΩ∩ó½Ñ¡¿∩σ
- ó¡πΓα¿ ¬½áßßá, ¡¿ ó «»¿ßá¡¿∩σ φΓ¿σ Σπ¡¬µ¿⌐.
- Äíδτ¡«, ¬«úñá «íΩÑ¬Γ ß«ºñáÑΓß∩, ß¡áτá½á «Γó«ñ¿Γß∩ »á¼∩Γ∞
- »«ñ óßÑ αẼÑΘáѼδÑ ó ßΓÑ¬Ñ »ÑαѼѡ¡δÑ, á ºáΓѼ óδºδóáÑΓß∩
- ¬«¡ßΓαπ¬Γ«α (¡á«í«α«Γ, »α¿ óδσ«ñÑ ºá «í½áßΓ∞ «»αÑñѽѡ¿∩
- ß¡áτá½á óδºδóáÑΓß∩ ñÑßΓαπ¬Γ«α, Ñß½¿ Γᬫó«⌐ íδ½ «»αÑñѽѡ, á
- ºáΓѼ «ßó«í«ªñáÑΓß∩ »á¼∩Γ∞ ßΓѬá). àß½¿, «ñ¡á¬«, éδ óδ»«½¡¿-
- ½¿ ó ¬«¡ßΓαπ¬Γ«αÑ »α¿ßóá¿óá¡¿Ñ »ÑαѼѡ¡«⌐ this, áóΓ«¼áΓ¿τÑß-
- ¬«Ñ «ΓóÑñÑ¡¿Ñ »á¼∩Γ¿ ó ßΓÑ¬Ñ »«ñáó½∩ÑΓß∩ (éδ ñ«½ª¡δ »«¡¿¼áΓ∞,
- τΓ« ñѽáÑΓÑ, »αѪñÑ τѼ »«»α«íπÑΓÑ φëà »α¿Ñ¼).
-
-
- æß佬¿
-
- æß佬á - φΓ« π¬áºáΓѽ∞, ¬«Γ«αδ⌐ óδú½∩ñ¿Γ ¬á¬ «íΩѬΓ.
- 諼»¿½∩Γ«α ßá¼ αáºδ¼Ñ¡«óδóáÑΓ Ñú« (»α¿¼Ñ¡∩∩ «»Ñαᵿε *).
- ¡« ¿¡¿µ¿á½¿º¿α«óáΓ∞ ßß佬π ñαπú¿¼ «íÑ¬Γ«¼ (ó φΓ«¼ ß½πτáÑ
- π éáß »«∩ó¿Γß∩ ñóá ß»«ß«íá αáí«Γδ ß «ñ¡¿¼ ¿ ΓѼ ªÑ «íΩÑ¬Γ«¼,
- τΓ« ßἫ »« ßÑíÑ »«α«ªñáÑΓ »α«í½Ñ¼δ ¿ ñ«½ª¡« ¿ß»«½∞º«óáΓ∞ß∩
- ß «ßë᫪¡«ßΓ∞ε). é«Γ »α¿¼Ñα:
-
- foo A(); // ß«ºñáÑΓß∩ "foo"
- foo & B = A;
- // ß«ºñáÑΓß∩ ßß佬á Γ¿»á "foo", ¿¡¿µ¿á½¿º¿α«óá¡¡á∩ A
- A.function(); // φΓ« Γ« ªÑ ßἫÑ, τΓ« ¿
- B.function();
-
- é óδΦÑ»α¿óÑñÑ¡¡«¼ Σαáú¼Ñ¡ΓÑ ¬«ñá, ¬«úñá A óδσ«ñ¿Γ ºá «í-
- ½áßΓ∞ «»αÑñѽѡ¿∩, ñ½∩ ¡ÑÑ óδºδóáÑΓß∩ ñÑßΓαπ¬Γ«α. ū߬«½∞¬π
- B ∩ó½∩ÑΓß∩ ßß佬«⌐, ñ½∩ ¡ÑÑ ñÑßΓαπ¬Γ«α ¡Ñ óδºδóáÑΓß∩ ¡¿¬«úñá.
- Æ«Γ Σá¬Γ, τΓ« »αá󿽫 «í½áßΓ¿ «»αÑñѽѡ¿∩ /ó τáßΓ¿ ó맮óá
- ñÑßΓαπ¬Γ«αá/ »«ñáó½∩ÑΓß∩ ñ½∩ ßß佫¬, ¼«ªÑΓ íδΓ∞ »«½ÑºÑ¡.
- éΓ«α«⌐ »πΓ∞ ¿ß»«½∞º«óá¡¿∩ ßß佫¬ - ß«ºñáΓ∞ «íΩÑ¬Γ »«½¡«ßΓ∞ε
- ó ßó«í«ñ¡«⌐ »á¼∩Γ¿ ¿ αáí«ΓáΓ∞ ß ¡¿¼ τÑαѺ ßß佬π. ü«½∞Φ¿¡ßΓ-
- ó« «íΩÑ¬Γ«ó αáß»«½áúáÑΓß∩ ó ßΓѬÑ, ¬α«¼Ñ ΓÑσ ¿σ τáßΓÑ⌐, ¬«Γ«-
- αδÑ ∩ó¡« ß«ºñáεΓß∩ »α¿ »«¼«Θ¿ new. Äñ¡á¬«, ¼«ª¡« ß«ºñáóáΓ∞
- φΓ¿ «íΩѬΓδ Γá¬, τΓ«íδ «¡¿ µÑ½¿¬«¼ αẼÑΘ὿ß∞ ó ßó«í«ñ¡«⌐
- »á¼∩Γ¿ (¬πτÑ). ò«α«Φ¿⌐ »α¿¼Ñα - «íΩѬΓδ ñá¡¡δσ, σαá¡∩Θ¿Ñß∩ ó
- í¿¡áα¡«¼ ñÑαÑóÑ. é««íΘÑ ú«ó«α∩, ¡Ñ σ«Γѽ«ß∞ íδ, τΓ«íδ ¬π߬¿
- ñÑαÑóá αáºαπΦ὿ß∞ »α«ßΓ« «Γ Γ«ú«, τΓ« «¡¿ óδσ«ñ∩Γ ºá úαá¡¿-
- µδ «í½áßΓ¿ «»αÑñѽѡ¿∩. ìÑ«íσ«ñ¿¼ »«½¡δ⌐ ¬«¡Γα«½∞ ¡áñ ΓѼ,
- ¬«úñá «¡¿ ñ«íáó½∩εΓß∩ ¬ ñÑαÑóπ ¿ πí¿αáεΓß∩ ¿º ñÑαÑóá. é ¬á-
- τÑßΓóÑ ¿½½εßΓαᵿ¿ αáßß¼«Γα¿¼ Σπ¡¬µ¿¿ add() ¿ remove() ó
- ú¿»«ΓÑΓ¿τÑ߬«¼ ¬½áßßÑ í¿¡áα¡δσ ñÑαÑó∞Ñó BinaryTree:
-
- void BinaryTree::add(int data) {
- // "leaf"(½¿ßΓ) ÑßΓ∞ ¡Ñ¬«Γ«αδ⌐ ¬½áßß, ß«ñÑαªáΘ¿⌐
- // ñá¡¡δÑ ¿ "»α¿¬αÑ»½∩Ѽδ⌐" ¬ φΓ«¼π í¿¡áα¡«¼π ñÑαÑóπ
- leaf & newleaf = *new leaf(data);
- // ū߬«½∞¬π ßßδ½¬á ¡á ¡ÑτΓ« óδú½∩ñ¿Γ ΓᬠªÑ, ¬á¬ ¿
- // φΓ« ¡ÑτΓ«, á ¡Ñ ¬á¬ π¬áºáΓѽ∞ ¡á ¡Ñú«, ¼δ ñ«½ª¡δ
- // αáºδ¼Ñ¡«óáΓ∞ π¬áºáΓѽ∞, »«ßΓáó½∩Ѽδ⌐ «»ÑαᵿÑ⌐
- // new, ߬áºáó *new
- attach(newleaf);
- }
- void BinaryTree::remove(leaf & lf) {
- // "un_attach" πñá½∩ÑΓ "½¿ßΓ" ¿º í¿¡áα¡«ú« ñÑαÑóá ¿
- // ó«ºóαáΘáÑΓ ßß佬π ¡á ½¿ßΓ:
- leaf & oldleaf = un_attach(lf);
- // ñ½∩ πñá½Ñ¡¿∩ ßß佬¿ (Γ.Ñ. ó맮óá ñÑßΓαπ¬Γ«αá ñ½∩
- // ßß佬¿) ß½ÑñπÑΓ »α¿óÑßΓ¿ ÑÑ ¬ π¬áºáΓѽε:
- delete (leaf *)(&oldleaf);
- }
-
- çá¼ÑΓ∞ΓÑ, τΓ« ¡Ñ «í∩ºáΓѽ∞¡« ¿ß»«½∞º«óáΓ∞ ßß佬π »α¿ ß«º-
- ñá¡¿¿ «íΩѬΓá ó ßó«í«ñ¡«⌐ »á¼∩Γ¿ - ¼«ª¡« »α«ßΓ« ¿ß»«½∞º«óáΓ∞
- π¬áºáΓѽ∞, ¿ úÑ¡Ñα¿απѼδ⌐ ¬«¼»¿½∩Γ«α«¼ ¬«ñ íπñÑΓ ΓѼ ªÑ.
- àñ¿¡ßΓóÑ¡¡á∩ αạ¿µá - ó Γ«¼, ¬á¬ óδú½∩ñ¿Γ ¬«ñ; »«½πτáεΘ¿Ñß∩
- «íΩѬΓδ ó ½εí«¼ ß½πτáÑ ¡Ñ »«ñóÑαªÑ¡δ »αáó¿½á¼ «í½áßΓ¿ «»αÑ-
- ñѽѡ¿∩.
- êß»«½∞º«óá¡¿Ñ ßß佫¬ ó óδΦÑ»α¿óÑñÑ¡¡«⌐ ¼á¡ÑαÑ ¿½¿ ¬á¬
- ñπí½¿απεΘÑÑ π¬áºáΓѽ¿ ¡á «íΩÑ¬Γ ¼«ªÑΓ »α¿ó«ñ¿Γ∞ ¬ ¿º«ΘαÑ¡¡δ¼
- «Φ¿í¬á¼; Ñú« ß½ÑñπÑΓ ¿ºíÑúáΓ∞ ¿½¿ ¬á¬ ß½ÑñπÑΓ »«¡∩Γ∞, »«τѼπ
- φΓ«Γ ß»«ß«í ¡Ñ«íσ«ñ¿¼ éá¼ ó Γ«¼ ¿½¿ ¿¡«¼ ß½πτáÑ. ìá¿í«½ÑÑ
- αáß»α«ßΓαá¡Ñ¡¡«Ñ ¿ß»«½∞º«óá¡¿Ñ ßß佫¬ - »ÑαÑñáτá »áαá¼ÑΓα«ó
- Σπ¡¬µ¿∩¼. àß½¿ éδ «íΩ∩󿽿 ñ½∩ Σπ¡¬µ¿¿ »ÑαÑñáτπ »« ßß佬Ñ,
- π¬áºáΓѽ∞ (»αÑñßΓáó½∩εΘ¿⌐ ßß佬π) óßÑúñá »ÑαÑñáÑΓß∩ ¡Ñºáó¿-
- ß¿¼« «Γ ß¿¡Γá¬ß¿ßá ¬«¡¬αÑΓ¡«ú« ó맮óá Σπ¡¬µ¿¿. ìá»α¿¼Ñα:
-
- void fred(foo & A) { A.member_function();} //¿ß»«½∞ºπѼ Ç
- main() {
- foo B;
- fred(B); fred(&B); // ó맮óδ ¿ñÑ¡Γ¿τ¡δ
- }
-
- àß½¿ Σπ¡¬µ¿∩ ¡Ñ ¼«ñ¿Σ¿µ¿απÑΓ ßó«¿σ »áαá¼ÑΓα«ó, »ÑαÑñáτá
- »« ßßδ½¬Ñ »αÑñ»«τΓ¿Γѽ∞¡á ¬á¬ ¡á¿í«½ÑÑ φΣΣÑ¬Γ¿ó¡δ⌐ ¼ÑΓ«ñ.
- ¥Γ« Γá¬ªÑ »α«ßΓÑ⌐Φ¿⌐ ß»«ß«í ñÑ⌐ßΓó¿⌐ ñ½∩ ¡áτ¿¡áεΘ¿σ. àß½¿ »«
- ¡Ñ¬«Γ«αδ¼ »α¿τ¿¡á¼ éá¼ ¡πª¡« ¼«ñ¿Σ¿µ¿α«óáΓ∞ »áαá¼ÑΓαδ (ó¼Ñß-
- Γ« Γ«ú«, τΓ«íδ »α«ßΓ« ߬«»¿α«óáΓ∞ ¿σ ó ½«¬á½∞¡δÑ »ÑαѼѡ¡δÑ
- ¿ ¼«ñ¿Σ¿µ¿α«óáΓ∞ Γá¼), ¿ß»«½∞ºπ⌐ΓÑ »ÑαÑñáτπ »« º¡áτÑ¡¿ε.
- é φΓ«¼ ß½πτáÑ ¬«¼»¿½∩Γ«α ß«ºñáÑΓ ¬«»¿ε ¿ßσ«ñ¡«ú« «íΩѬΓá
- (¿ß»«½∞ºπ∩ ¿¡¿µ¿á½¿ºáµ¿ε ¬«»¿α«ó᡿Ѽ, ¬«Γ«απε éδ ñ«½ª¡δ ¡á-
- »¿ßáΓ∞). ¥Γ« ÑΘÑ «ñ¿¡ ¡Ñ»α«ßΓ«⌐ »«ñσ«ñ, ¬«Γ«α«ú« ¡áτ¿¡áεΘѼπ
- ß½ÑñπÑΓ ¿ºíÑúáΓ∞.
- ū߽Ññ¡¿⌐ »α¿Ñ¼ ß ¿ß»«½∞º«ó᡿Ѽ ßß佫¬ - «í«⌐Γ¿ ¼Ñσá¡¿º¼
- ºáΘ¿Γδ ¿¡Σ«α¼áµ¿¿ »α¿ »«¼«Θ¿ Σπ¡¬µ¿¿ ñ«ßΓπ»á, ó«ºóαáΘáεΘÑ⌐
- ßß佬π ¡á Σá¬Γ¿τÑ߬«Ñ º¡áτÑ¡¿Ñ, á ¡Ñ ¬«»¿ε φΓ«ú« º¡áτÑ¡¿∩.
- Åα¿¼Ñα«¼ Γ«ú«, úñÑ φΓ« »«½Ñº¡«, ∩ó½∩ÑΓß∩ ¬½áßß vector, ó ¬«-
- Γ«α«¼ »«½∞º«óáΓѽ∞ ¼«ªÑΓ ¿º¼Ñ¡¿Γ∞ φ½Ñ¼Ñ¡Γ óÑ¬Γ«αá »α¿ »«¼«Θ¿
- «»Ñαᵿ¿ [].
-
- #include <stream.hpp>
- class ten_vector{
- int element[10];
- public;
- ten_vector(int x = 0) { /* º¡áτÑ¡¿Ñ »« π¼«½τá¡¿ε */
- for(int i = 0; i < 10; i++)
- element[i] = x;
- }
- int value(int i) { if (i < 10) return element[i];
- else return 0; }
- int & operator[](int i) { return element[i]; }
- };
- main() {
- ten_vector V;
- cout << V.value(5);
- /* ¼«ª¡« τ¿ΓáΓ∞, ¡« ¡Ñ ¿º¼Ñ¡∩Γ∞ Ñú« */
- V[5] = 20; /* ¿ß»«½∞ºπÑΓß∩ "operator[]" */
- cout << " " << V.value(5);
- }
-
- çá¼ÑΓ∞ΓÑ, ¬á¬ ß¿¼»áΓ¿τ¡« φΓ« αáí«ΓáÑΓ - »«ß¬«½∞¬π ¬«¼»¿-
- ½∩Γ«α αáºδ¼Ñ¡«óδóáÑΓ áñαÑß, ¬«Γ«αδ⌐ »«ßΓáó½∩ÑΓ operator[],
- ßΓ᫬á V[5]=20 τ¿ΓáÑΓß∩ ß«óÑαΦÑ¡¡« ÑßΓÑßΓóÑ¡¡«. 髺óαáΓ
- «íΩѬΓá ¿º Σπ¡¬µ¿¿ ¼«ªÑΓ «¬áºáΓ∞ß∩ ¡Ñ»α«ßΓδ¼ ñѽ«¼ (ß¼«Γα¿ΓÑ
- ß½ÑñπεΘ¿⌐ »áαáúαáΣ). é τáßΓ¡«ßΓ¿, ¡Ñ½∞º∩ »δΓáΓ∞ß∩ ó«ºóαáΓ¿Γ∞
- ßß佬π ¡á ½«¬á½∞¡πε »ÑαѼѡ¡πε (¡áºδóáѼπε Γá¬ªÑ áóΓ«¼áΓ¿-
- τÑ߬«⌐ »ÑαѼѡ¡«⌐). 﫬á½∞¡δÑ »ÑαѼѡ¡δÑ αẼÑΘáεΓß∩ ó ßΓÑ-
- ¬Ñ - ¬«úñá Σπ¡¬µ¿∩ ºáóÑαΦ¿Γß∩, «¡á ó«ºóαáΓ¿Γ ßß佬π ¡á »Ñ-
- αѼѡ¡πε ó¡Ñ «í½áßΓ¿ «»αÑñѽѡ¿∩!
-
-
- æ«ó¼ÑßΓ¡«Ñ ¿ß»«½∞º«óá¡¿Ñ «»Ñαᵿ⌐ (Operator Overloading)
-
- Å«τΓ¿ óßÑ «»Ñαᵿ¿ ó C++ ¼«úπΓ ß«ó¼ÑßΓ¡« ¿ß»«½∞º«óáΓ∞ß∩ ó
- αẽ¿τ¡δσ ß¼δß½áσ ó ºáó¿ß¿¼«ßΓ¿ «Γ Γ¿»«ó ñá¡¡δσ, ¬ ¬«Γ«αδ¼
- «¡¿ »α¿¼Ñ¡∩εΓß∩. ùΓ«íδ »αáó¿½∞¡« αáí«ΓáΓ∞ ß ß«ó¼ÑßΓ¡« ¿ß-
- »«½∞ºπÑ¼δ¼¿ «»Ñαᵿ∩¼¿, ¡áñ« »«¡¿¼áΓ∞ ß½ÑñπεΘÑÑ.
-
- * Åα¿ »ÑαÑñáτÑ áαúπ¼Ñ¡Γ«ó ó Σπ¡¬µ¿¿ - «»Ñαᵿ¿ ß½ÑñπÑΓ
- ¿ß»«½∞º«óáΓ∞ ßß佬¿, ¿ áαúπ¼Ñ¡Γδ ¡¿¬«úñá ¡Ñ ñ«½ª¡δ
- ¼«ñ¿Σ¿µ¿α«óáΓ∞ß∩ (éδ ªÑ ¡Ñ «ª¿ñáÑΓÑ, τΓ« A + B íπñÑΓ
- ¼«ñ¿Σ¿µ¿α«óáΓ∞ A ¿½¿ B, ¡Ñ Γᬠ½¿?).
- * ò«Γ∩ αáºαÑΦáÑΓß∩ ß«ó¼ÑßΓ¡« ¿ß»«½∞ºπѼδÑ «»Ñαᵿ¿
- «»¿ßδóáΓ∞ ¬á¬ Σπ¡¬µ¿¿-ñαπº∞∩ (friends) ß ñóπ¼∩ »áαá-
- ¼ÑΓαἿ, »αÑñ»«τΓ¿Γѽ∞¡ÑÑ (¿ ¼Ñ¡ÑÑ ºá»πΓá¡¡«) - ñÑ-
- ñáΓ∞ ¿σ Σπ¡¬µ¿∩¼¿-τ½Ñ¡á¼¿ ß «ñ¡¿¼ »áαá¼ÑΓα«¼. ä½∩
- í¿¡áα¡δσ «»Ñαᵿ⌐ this »α¿ φΓ«¼ íπñÑΓ π¬áºδóáΓ∞ ¡á
- «íΩÑ¬Γ - ½Ñóδ⌐ «»Ñαá¡ñ, á »áαá¼ÑΓα - ºáñáóáΓ∞ »αáóδ⌐
- «»Ñαá¡ñ.
- * Åα¿ ó«ºóαáΘÑ¡¿¿ «íΩѬΓá ¿º Σπ¡¬µ¿¿-«»Ñαᵿ¿ (¿½¿
- ñαπú«⌐ Σπ¡¬µ¿¿, ¿ß»«½∞ºπѼ«⌐ ó φΓ«¼ »½á¡Ñ) ó«ºóαáΓ
- ß½ÑñπÑΓ óδ»«½¡∩Γ∞ º¡áτÑ¡¿Ñ¼. ¥Γ« º¡áτ¿Γ, τΓ« ñ«½ªÑ¡
- íδΓ∞ ¬«¡ßΓαπ¬Γ«α ñ½∩ ¿¡¿µ¿á½¿ºáµ¿¿ ¬«»¿α«ó᡿Ѽ; ó
- ß½πτáÑ, ¬«úñá «íΩѬΓδ ¿¼ÑεΓ τáßΓ¿ ó ¬πτÑ, φΓ« ñ«½ª¡«
- íδΓ∞ ºá»α«úαá¼¼¿α«óá¡« «ß«íÑ¡¡« ΓΘáΓѽ∞¡«, τΓ«íδ ¿º-
- íѪáΓ∞ »«α«ªñÑ¡¿∩ ¼πß«αá (¿ß¬½ετ¿Γѽ∞¡« αáí«Γ«ß»«-
- ß«í¡δ⌐ ¼ÑΓ«ñ, »«ºó«½∩εΘ¿⌐ ¿ºíѪáΓ∞ ¼πß«αá, - »«ñßτÑΓ
- ßß佫¬, «¡ ñѼ«¡ßΓα¿απÑΓß∩ ó ¬½áßßÑ String ó ¬¡¿úÑ
- æΓα«πßΓαπ»á ¡á ßΓαá¡¿µÑ 184).
- * Åα¿ ß«ó¼ÑßΓ¡«¼ ¿ß»«½∞º«óá¡¿¿ «»Ñαᵿ⌐ ß½Ññ¿ΓÑ ºá ΓѼ,
- ¬á¬ «¡¿ αáí«ΓáεΓ ó óδαáªÑ¡¿∩σ »α«¿ºó«½∞¡«⌐ ß½«ª¡«ßΓ¿
- (A+B-C/D...). Å«½∞º«óáΓѽ∞, íѺ ß«¼¡Ñ¡¿∩, »«»δΓáÑΓß∩
- ßñѽáΓ∞ τΓ«-¡¿íπñ∞, « τѼ éδ ¿ ¡Ñ ñπ¼á½¿.
-
-
- Ä»Ñαᵿ∩ »α¿ßóá¿óá¡¿∩ (operator=())
-
- öπ¡¬µ¿∩ operator= »« α∩ñπ »α¿τ¿¡ ¡Ñ«íδτ¡á. é »α«ßΓ«¼ C
- »α¿ßóá¿óá¡¿Ñ ó«ºóαáΘáÑΓ »α¿ßóá¿óáѼ«Ñ º¡áτÑ¡¿Ñ, í½áú«ñáα∩
- τѼπ 󫺼«ª¡δ óδαáªÑ¡¿∩ óα«ñÑ A=B=C, ¡« ¡Ñ ñ½∩ ßΓαπ¬Γπα.
- ìÑ»α¿∩Γ¿Ñ ó αÑ὿ºáµ¿¿ ¡Ñ ñ«»π߬Ὣ ¼¡«ªÑßΓóÑ¡¡«Ñ »α¿ßóá¿óá-
- ¡¿Ñ ßΓαπ¬Γπα. C++ óδ½Ñτ¿½ φΓπ í«½Ñº¡∞, ΓᬠτΓ« ó«ºóαáΘÑ¡¿Ñ
- «íΩѬΓá »«ß½Ñ »α¿ßóá¿óá¡¿∩ (»α¿ »«¼«Θ¿ «»ÑαáΓ«αá return
- *this) ñ«»π߬áÑΓ ¼¡«ªÑßΓóÑ¡¡«Ñ »α¿ßóá¿óá¡¿Ñ «íΩÑ¬Γ«ó.
-
- öπ¡¬µ¿∩ operator= ¡Ñ óßÑúñá ¿ß»«½∞ºπÑΓß∩ Γá¼, úñÑ éδ φΓ«-
- ú« «ª¿ñáÑΓÑ. ìá»α¿¼Ñα:
-
- /* Σá⌐½ potato.hpp */
- class potato {
- int u, v;
- public;
- potato (int a, int b = 0) { u = a; v = b; }
- potato (potato & p) { u = p.u; v = p.v; }
- potato operator=(potato & p)
- { u = p.u; v = p.v; return *this; }
- };
-
- // Σá⌐½ potatst.hpp
- #include "potato.hpp"
- main() {
- potato X(1,2);
- potato y = potato(3,4); // óδºδóáÑΓß∩ potato(3,4)
- potato Z = 5; // óδºδóáÑΓß∩ potato(5,0)
- potato Q = X; // óδºδóáÑΓß∩ potato(potato &)
- Y = Z; // óδºδóáÑΓß∩ potato::operator=(potato &)
- }
-
- ÄíαáΓ¿ΓÑ ó¡¿¼á¡¿Ñ ¡á ¿ß»«½∞º«óá¡¿Ñ *this ó Σπ¡¬µ¿¿
- operator=(). ū߬«½∞¬π operator= ó«ºóαáΘáÑΓ º¡áτÑ¡¿Ñ Γ¿»á
- potato, ¬«ñ return *this «º¡áτáÑΓ "ó«ºóαáΓ¿ ¬«»¿ε ßἫú«
- ßÑí∩".
-
- ìᬫ¡Ñµ, »α¿ ß«ºñá¡¿¿ »α«¿ºó«ñ¡«ú« ¬½áßßá operator=() ¡Ñ
- ¡áß½ÑñπÑΓß∩ ¬á¬ óßÑ ñαπú¿Ñ Σπ¡¬µ¿¿ - «¡á ñ«½ª¡á «»αÑñѽ∩Γ∞ß∩
- ºá¡«ó« ñ½∩ ¬áªñ«ú« ¡«ó«ú« »α«¿ºó«½∞¡«ú« ¬½áßßá. ùáßΓ« σ«τÑΓ-
- ß∩ ¿ß»«½∞º«óáΓ∞ operator=() ¿º íẫó«ú« ¬½áßßá, ¡Ñ ¡áí¿αá∩
- ÑÑ ºá¡«ó«.
- é«Γ ¬á¬ φΓ« ßñѽáΓ∞:
-
- #include "potato.hpp"
- class tomato : public potato {
- int t;
- public:
- tomato(int a, int b, int c) : (a,b) { t = c;}
- // ºá¼ÑΓ∞ΓÑ, ¬á¬ óδºδóáÑΓß∩ ¿¡¿µ¿á½¿ºáµ¿∩ ¬«»¿α«ó᡿Ѽ
- // ¿º íẫó«ú« ¬½áßßá:
- tomato(tomato & rv) : (rv) { t = rv.t; }
- tomato operator=(tomato & x) {
- t = x.t;
- (potato)(*this) = (potato)x;
- return *this;
- }
- };
- main() {
- tomato A(1,2,3), B(4,5,6);
- A = B;
- }
-
-
- ô¬áºáΓѽ¿ ¡á void
-
- àß½¿ «íΩ∩ó¿Γ∞ π¬áºáΓѽ∞ ¡á void, «¡ íπñÑΓ ß«ñÑαªáΓ∞ 'α«ñ«-
- ó«⌐' áñαÑß, ¬«Γ«αδ⌐ ¼«ªÑΓ íδΓ∞ »α¿óÑñÑ¡ ¬ áñαÑßπ «íΩѬΓá ½ε-
- í«ú« Γ¿»á. ô¬áºáΓѽ¿ ¡á void ¿ß»«½∞ºπεΓß∩ »α¿ »ÑαÑñáτÑ π¬á-
- ºáΓѽÑ⌐ Σπ¡¬µ¿∩¼, ¬«Γ«αδÑ ¡Ñ ¼«úπΓ º¡áΓ∞ Γ¿» »ÑαÑñáóáѼ«ú«
- ¿¼ «íΩѬΓá, á Γá¬ªÑ ñ½∩ »ÑαÑñáτ¿ ¿º Σπ¡¬µ¿⌐ «íΩÑ¬Γ«ó, ¡Ñ
- ¿¼ÑεΘ¿σ Γ¿»á. Äíá ¼ÑΓ«ñá «íσ«ñ∩Γ ¬«¡Γα«½∞ Γ¿»«ó; ¿σ ß½ÑñπÑΓ
- ¿ºíÑúáΓ∞ ¡áτ¿¡áεΘ¿¼.
-
-
- é¿αΓπá½∞¡δÑ Σπ¡¬µ¿¿
-
- é¿αΓπá½∞¡á∩ Σπ¡¬µ¿∩ - «ñ¿¡ ¿º ¬½ετÑóδσ φ½Ñ¼Ñ¡Γ«ó ó C++
- ¬á¬ «íΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡«¼ ∩ºδ¬Ñ. ò«Γ∩ ∩ºδ¬ ¼«ªÑΓ »«ññÑα-
- ª¿óáΓ∞ áíßΓαá¬Γ¡δÑ Γ¿»δ ñá¡¡δσ ¿ ¡áß½Ññ«óá¡¿Ñ, «¡ ¡Ñ ∩ó½∩ÑΓ-
- ß∩ ñÑ⌐ßΓó¿Γѽ∞¡« «íΩÑ¬Γ¡«-«α¿Ñ¡Γ¿α«óá¡¡δ¼, Ñß½¿ «ΓßπΓßΓóπÑΓ
- «íΘ¡«ßΓ∞ (commonality), ¡áºδóáѼá∩ ÑΘÑ "»«½¿¼«αΣ¿º¼". é¿αΓπ-
- á½∞¡δÑ Σπ¡¬µ¿¿ ∩ó½∩εΓß∩ ßαÑñßΓó«¼, «íÑß»Ñτ¿óáεΘ¿¼ «íΘ¡«ßΓ∞ ó
- C++.
-
- àß½¿ Σπ¡¬µ¿∩ «íΩ∩ó½Ñ¡á ó íáº«ó«¼ ¬½áßßÑ ¬á¬ "«í몭«óÑ¡-
- ¡á∩" (¡Ñ ó¿αΓπá½∞¡á∩), «¡á ¡Ñ »«½¿¼«αΣ¡á∩. àß½¿ »α¿ ¡áß½Ññ«-
- óá¡¿¿ ¿º íẫó«ú« ¬½áßßá ó ¡«ó«¼ ¬½áßßÑ Σπ¡¬µ¿∩ íπñÑΓ »ÑαÑ-
- «»αÑñѽѡá, »«½πτáεΓß∩ ñóÑ «Γñѽ∞¡δσ Σπ¡¬µ¿¿. àß½¿, «ñ¡á¬«,
- Σπ¡¬µ¿∩ «íΩ∩ó½Ñ¡á ó íáº«ó«¼ ¬½áßßÑ ¬á¬ virtual, ¿ »ÑαÑ«»αÑ-
- ñѽѡá ó ¬½áßßáσ, ¿º ¡Ñú« »α«¿ºó«ñ¡δσ, Γ« íπñÑΓ ßπΘÑßΓó«óáΓ∞
- Ññ¿¡ßΓóÑ¡¡á∩ Σπ¡¬µ¿∩ ñ½∩ ¬áªñ«ú« ¬½áßßá, ¿ Σπ¡¬µ¿∩ ¼«ªÑΓ
- íδΓ∞ óδºóá¡á ñ½∩ »α«¿ºó«ñ¡«ú« ¬½áßßá ¿º íẫó«ú« ¬½áßßá.
-
- ùΓ« φΓ« º¡áτ¿Γ? ÅαÑñ»«½«ª¿¼, ¼δ ßΓα«¿¼ «¬«¡¡πε ß¿ßΓѼπ,
- ¿ ßπΘÑßΓóπÑΓ Γα¿ Γ¿»á «íΩÑ¬Γ«ó, ¬«Γ«αδÑ ¼«ª¡« óδóÑßΓ¿ ¡á
- φ¬αá¡ (¡áº«óѼ ¿σ ScreenObj): Dialog (¬«Γ«αδ⌐ »«½∞º«óáΓѽ∞
- ¼«ªÑΓ óó«ñ¿Γ∞), Reader (¬«Γ«αδ⌐ »«½∞º«óáΓѽ∞ ¼«ªÑΓ »α«ß¼áΓ-
- α¿óáΓ∞) ¿ Message (¬«Γ«αδ⌐ óδó«ñ¿Γ ß««íΘÑ¡¿Ñ ¿ ΓαÑíπÑΓ »α«ß-
- Γ«ú« «ΓóÑΓá ñá-¿½¿-¡ÑΓ). ìá φ¬αá¡Ñ ¼«ªÑΓ íδΓ∞ ¡Ñ߬«½∞¬« »«-
- ñ«í¡δσ «íΩÑ¬Γ«ó ¿ óßÑ «¡¿ π»αáó½∩εΓß∩ »α«úαá¼¼«⌐ - ¼Ñ¡ÑñªÑ-
- α«¼ φ¬αá¡á.
-
- îÑ¡ÑñªÑα φ¬αá¡á ñ«½ªÑ¡ π¼ÑΓ∞ «Γ¬αδóáΓ∞, ºá¬αδóáΓ∞, »ÑαÑñ-
- ó¿úáΓ∞ ¿ »ÑαÑα¿ß«óδóáΓ∞ óßÑ óδó«ñ¿¼δÑ «íΩѬΓδ, ¡Ñºáó¿ß¿¼« «Γ
- Γ«ú«, ¬á¬«ú« «¡¿ ¬«¡¬αÑΓ¡« Γ¿»á. ùΓ«íδ «íÑß»Ñτ¿Γ∞ φΓ«, Σπ¡¬-
- µ¿¿ Open, Close, Move ¿ ReDraw «íΩ∩ó½∩εΓß∩ ó íáº«ó«¼ ¬½áß-
- ßÑ ScreenObj ó¿αΓπá½∞¡δ¼¿ ¿ ¼«ñ¿Σ¿µ¿απεΓß∩ ó »α«¿ºó«ñ¡δσ
- ¬½áßßáσ. îÑ¡ÑñªÑα φ¬αá¡á »α«ßΓ« σαá¡¿Γ ß»¿ß«¬ ¿º SreenObj ¿
- óδºδóáÑΓ »«ñσ«ñ∩Θπε Σπ¡¬µ¿ε ñ½∩ ¬áªñ«ú« φ½Ñ¼Ñ¡Γá ß»¿ß¬á.
- é«Γ ¬á¬ φΓ« ¼«ú½« íδ óδú½∩ñÑΓ∞:
-
- class SreenObj { // ºñÑß∞ »α¿óáΓ¡δÑ ñá¡¡δÑ
- public:
- virtual void Open(){} // Σπ¡¬µ¿¿ ñ«½ª¡δ ¿¼ÑΓ∞ «»αÑñѽѡ¿Ñ
- virtual void Close(){} // ó íáº«ó«¼ ¬½áßßÑ (ñáªÑ Ñß½¿
- // «¡« »πßΓ«Ñ)
- virtual void ReDraw(){}
- virtual void Move(int x, int y) {} // ¡á ¬á¬«Ñ αáßßΓ«∩¡¿Ñ
- // »ÑαÑñó¿úáΓ∞
- };
- class Dialog : public ScreenObj {
- // ºñÑß∞ »α¿óáΓ¡δÑ ñá¡¡δÑ ¬½áßßá DIALOG
- public:
- Dialog(); // ¬«¡ßΓαπ¬Γ«α
- ~Dialog(); // ñÑßΓαπ¬Γ«α
- void Open(); void Close(); void ReDraw();
- void Move(int, int);
- };
- class Reader : public ScreenObj {
- // ºñÑß∞ »α¿óáΓ¡δÑ ñá¡¡δÑ ¬½áßßá Reader
- public:
- Reader();
- ~Reader();
- void Open(); void Close(); void ReDraw();
- void Move(int, int);
- };
- class Message: public ScreenObj {
- // ºñÑß∞ »α¿óáΓ¡δÑ ñá¡¡δÑ ¬½áßßá Message
- public:
- Message();
- ~Message();
- void Open(); void Close(); void ReDraw();
- void Move(int, int);
- };
- // ÅαÑñ»«½áúáÑΓß∩, τΓ« ߻ѵ¿á½¿º¿α«óá¡¡δÑ ñ½∩ ¬½áßß«ó
- // Σπ¡¬µ¿¿ «»αÑñѽѡδ úñÑ-Γ« ÑΘÑ (φΓá ¿½½εßΓαᵿ∩ »«¬áºδ-
- // óáÑΓ ½¿Φ∞ ßσѼπ αáí«Γδ). Ä¡¿ óδú½∩ñ∩Γ ¬á¬ «íδτ¡δÑ φ¬-
- // αá¡¡δÑ Σπ¡¬µ¿¿.
-
- class ScreenList { // ß«ñÑαª¿Γ ß»¿ß«¬ ¿º ScreenObj_Ñ¬Γ«ó
- struct Window {
- ScreenObj * head; // »α¿óáΓ¡á∩ ßΓαπ¬Γπαá
- Window * next; }; // τΓ«íδ ß«ºñáΓ∞ ßó∩ºá¡¡δ⌐ ß»¿ß«¬
- Window * head; // ¡áτὫ ß»¿ß¬á
- Window * current; // Æá¬ ¼δ ¼«ªÑ¼ ñó¿úáΓ∞ß∩ »« ß»¿ß¬π
- public:
- void add(ScreenObj &); // ñ«íáó½Ñ¡¿Ñ ¬ ß»¿ß¬π
- void remove(ScreenObj &); // πñá½Ñ¡¿Ñ ScreenObj_ѬΓá
- void reset() { current = head; }
- // »ÑαÑσ«ñ ¡á ¡áτὫ /ß»¿ß¬á/
- ScreenObj & GetNext();
- // ó«ºóαáΘáÑΓ ßß佬π ¡á «τÑαÑñ¡«⌐ ScreenObj ¿º ß»¿ß¬á
- };
- main() {
- Message M; Reader R; Dialog D;
- Screenlist List;
- List.add(M); List.add(R); List.add(D);
- List.reset();
- while ( (ScreenObj & Win = List.GetNext()) != 0)
- Win.ReDraw(); // ÅÑαÑα¿ß«óáΓ∞ óÑß∞ ß»¿ß«¬
- }
-
- äÑßΓαπ¬Γ«αδ Γá¬ªÑ ¼«úπΓ íδΓ∞ «íΩ∩ó½Ñ¡δ ¬á¬ ó¿αΓπá½∞¡δÑ,
- τΓ« «íÑß»Ñτ¿óáÑΓ ó맮ó ¡πª¡«ú« ñÑßΓαπ¬Γ«αá »α¿ αáí«ΓÑ ß »α«-
- ¿ºó«ñ¡δ¼¿ ¬½áßßἿ τÑαѺ íẫóδ⌐ ¬½áßß. â½áóá 6 ¬¡¿ú¿ é¿¡Ñαá
- ¿ Å¿¡ß«¡á »«ßó∩ΘÑ¡á ó¿αΓπá½∞¡δ¼ Σπ¡¬µ¿∩¼.
-
-
- äαπº∞∩ (friends)
-
- ùáßΓ« 󫺡¿¬áεΓ ß¿Γπᵿ¿, ¬«úñá ¡Ñ«íσ«ñ¿¼« ñáΓ∞ Σπ¡¬µ¿¿
- ¡Ñ τ½Ñ¡π ¬½áßßá ñ«ßΓπ» ¬ »α¿óáΓ¡δ¼ φ½Ñ¼Ñ¡Γá¼ ßΓαπ¬Γπαδ ¬½áß-
- ßá. Æá¬«⌐ ñ«ßΓπ» ¼«ªÑΓ íδΓ∞ αáºαÑΦÑ¡ Γ«½∞¬« ßἿ¼ ¬½áßß«¼, ó
- ¬«Γ«α«¼ Σπ¡¬µ¿∩ (¿½¿, ó ¡Ñ¬«Γ«αδσ ß½πτá∩σ, µÑ½δ⌐ ¬½áßß)
- «íΩ∩ó½∩ÑΓß∩ ¬á¬ friend (ñαπú) ó¡πΓα¿ «íΩ∩ó½Ñ¡¿∩ ¬½áßßá. 쿪Ñ
- ß½ÑñπÑΓ »α«ßΓ«⌐ »α¿¼Ñα:
-
- class Integer {
- int X;
- public:
- Integer(int I) : X(I) {};
- friend void set(Integer &,int);
- };
- void set(Integer & A, int J) { A.X = J;}
- // ¡Ñ Σπ¡¬µ¿∩ τ½Ñ¡, ¡« ¿¼ÑÑΓ ñ«ßΓπ» ¬
- // »α¿óáΓ¡δ¼ ñá¡¡δ¼
-
- çá¼ÑΓ∞ΓÑ, τΓ« ó ¬«¡ßΓαπ¬Γ«αÑ ñ½∩ Integer óδºδóáÑΓß∩ ¬«¡-
- ßΓαπ¬Γ«α ñ½∩ «íΩѬΓá-τ½Ñ¡á ¬½áßßá X, ¡Ñß¼«Γα∩ ¡á Γ«, τΓ« X
- ÑßΓ∞ int (µÑ½«Ñ), Γ.Ñ. óßΓα«Ñ¡¡δ⌐ Γ¿».
-
-
- ÄíΘ¿Ñ, »α¿óáΓ¡δÑ, ºáΘ¿ΘÑ¡¡δÑ (Public, Private, Protected)
-
- è½ετÑó«Ñ ß½«ó« public («íΘ¿⌐, »πí½¿τ¡δ⌐) π»αáó½∩ÑΓ ñ«ßΓπ-
- »«¼ ¬ ñá¡¡δ¼ ¿ Σπ¡¬µ¿∩¼ τ½Ñ¡á¼ ¬½áßßá. Public αáºαÑΦáÑΓ ñ«ß-
- Γπ» óßѼ.
- é¿¡Ñα & Å¿¡ß«¡ «íßπªñáεΓ ¬½ετÑóδÑ ß½«óá private ¿
- protected. Ä¡¿ ¡Ñ í뫨 τáßΓ∞ε «»αÑñѽѡ¿∩, ñá¡¡«ú« ó ¬¡¿úÑ
- æΓα«πßΓαá»á, ¿ ¡Ñ »«ññÑনó὿ß∞ ó Zortech C++ ó ¼«¼Ñ¡Γ »ÑαÑ-
- ñáτ¿ ó »ÑτáΓ∞ φΓ«ú« απ¬«ó«ñßΓóá. Äñ¡á¬«, ó íπñπΘ¿σ óÑαß¿∩σ
- Zortech C++ Γá¬á∩ »«ññÑαª¬á »αÑñ»«½áúáÑΓß∩. Å«ªá½π⌐ßΓá, »α«-
- óÑα∞ΓÑ Σá⌐½ read.me ¡á óΓ«α«¼ ñ¿ßΓα¿íπΓ¿ó¡«¼ ñ¿ß¬Ñ ñ½∩ »«½π-
- τÑ¡¿∩ í«½ÑÑ «»ÑαáΓ¿ó¡«⌐ ¿¡Σ«α¼áµ¿¿ « ¡«óδσ 󫺼«ª¡«ßΓ∩σ.
-
-
- æΓáΓ¿τÑ߬¿Ñ »ÑαѼѡ¡δÑ
-
- é Zortech C++ ¼«ª¡« ¿ß»«½∞º«óáΓ∞ static (ßΓáΓ¿τÑ߬¿Ñ) ¿
- ú½«íá½∞¡δÑ «íΩѬΓδ. æΓáΓ¿τÑ߬¿Ñ «íΩѬΓδ »«ñτ¿¡∩εΓß∩ ΓѼ ªÑ
- »αáó¿½á¼ «í½áßΓ¿ «»αÑñѽѡ¿∩, ºá ¿ß¬½ετÑ¡¿Ñ¼ Γ«ú«, τΓ« ñÑßΓ-
- απ¬Γ«α ¡Ñ óδºδóáÑΓß∩ ó« óαѼ∩ ºáóÑαΦÑ¡¿∩ Σπ¡¬µ¿¿, úñÑ «»¿ßá¡
- «íΩѬΓ, ¿ «íΩÑ¬Γ ¡Ñ "πσ«ñ¿Γ" ó »α«¼ÑªπΓ¬áσ ¼Ñªñπ ó맮óἿ
- Σπ¡¬µ¿¿, ¬á¬ φΓ« »α«¿ßσ«ñ¿Γ ß« "ßΓѬ«ó묨" (áóΓ«¼áΓ¿τÑ߬¿¼¿"
- »ÑαѼѡ¡δ¼¿.
-
- ⽫íá½∞¡δÑ «íΩѬΓδ «íΩ∩ó½∩εΓß∩ ó¡Ñ óßÑσ Σπ¡¬µ¿⌐ ¿ ñ«ßΓπ»-
- ¡δ ¿º óßÑσ Σπ¡¬µ¿⌐. è«¡ßΓαπ¬Γ«αδ ñ½∩ ßΓáΓ¿τÑ߬¿σ ¿ ú½«íá½∞-
- ¡δσ »ÑαѼѡ¡δσ óδºδóáεΓß∩ ñ« óσ«ñá ó main; ñÑßΓαπ¬Γ«αδ óδºδ-
- óáεΓß∩ »α¿ «íαáΘÑ¡¿¿ ¬ exit(), ∩ó¡«¼ ½¿í« ¡Ñ∩ó¡«¼, Γ.Ñ. »α¿
- ó«ºóαáΓÑ ¿º main().
-
-
- Ä»Ñαᵿ∩ αáºαÑΦÑ¡¿∩ «í½áßΓ¿ ñÑ⌐ßΓó¿∩
-
- Ä»Ñαᵿ∩ αáºαÑΦÑ¡¿∩ «í½áßΓ¿ ñÑ⌐ßΓó¿∩ :: »«ºó«½∩ÑΓ Γ«τ¡« π¬á-
- ºáΓ∞, ¬á¬πε Σπ¡¬µ¿ε ¡πª¡« óδºóáΓ∞, ó ß½πτá∩σ, ¬«úñá ÑßΓ∞
- ¡Ñ߬«½∞¬« óáα¿á¡Γ«ó,¿ π¼«½τá¡¿Ñ-¡Ñ ëà óáα¿á¡Γ,τΓ« éá¼ ¡πªÑ¡.
- Åα¿ ¿ß»«½∞º«óá¡¿¿ íѺ »αÑΣ¿¬ßá «»Ñαᵿ∩ αáºαÑΦÑ¡¿∩ «í½áßΓ¿
- ñÑ⌐ßΓó¿∩ óδí¿αáÑΓ ú½«íá½∞¡«Ñ «»αÑñѽѡ¿Ñ ¿½¿ Γ«, ¬«Γ«α«Ñ
- »αÑñ«»αÑñѽѡ« ó ∩ºδ¬Ñ (á ¡Ñ »ÑαÑ«»αÑñѽѡ¡«Ñ ñ½∩ ß«ó¼ÑßΓ¡«-
- ú« ¿ß»«½∞º«óá¡¿∩). è »α¿¼Ñαπ, ¼«ª¡« »ÑαÑ«»αÑñѽ¿Γ∞ ¬½ετÑó«Ñ
- ß½«ó« («»Ñαᵿε) ñ½∩ αẼÑΘÑ¡¿∩ ó ¬πτÑ - new. ùΓ«íδ óδíαáΓ∞
- "¡«α¼á½∞¡«Ñ" «»αÑñѽѡ¿Ñ ó¼ÑßΓ« »ÑαÑ«»αÑñѽѡ¡«ú«, ß½ÑñπÑΓ
- ߬áºáΓ∞
-
- ::new
-
- ÅÑαѼѡ¡δÑ Γá¬ªÑ ¼«ª¡« óδí¿αáΓ∞ »α¿ »«¼«Θ¿ «»Ñαᵿ¿ αáº-
- αÑΦÑ¡¿∩ «í½áßΓ¿ ñÑ⌐ßΓó¿∩:
-
- int A = 20;
- class deelybob {
- int A;
- public:
- deelybob() { A = ::A;
- };
-