ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΏΠ°ΡΠΎΠ»Ρ root. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Qt Π±ΡΠ΄Π΅Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° Π² /usr/local/Trolltech/Qtβ4.1.1. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΌΠ΅ΡΡΠΎ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Qt, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΏΡΠΈΡ βprefix ΡΠΊΡΠΈΠΏΡΠ° configure, ΠΈ Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΠΌΠ΅Π΅ΡΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π·Π°ΠΏΠΈΡΡ Π² ΡΡΠΎ ΠΌΠ΅ΡΡΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Π²Π²Π΅ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
make install
6. ΠΠ°ΡΡΡΠΎΠΉΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ Π΄Π»Ρ Qt.
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ bash, ksh, zsh ΠΈΠ»ΠΈ sh, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ Π² Π²Π°Ρ ΡΠ°ΠΉΠ» .profile:
PATH=/usr/local/Trolltech/Qt-4.1.1/bin:$Π ΠΠ’Π
export PATH
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ csh ΠΈΠ»ΠΈ tcsh, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΠΎΠΊΡ Π² Π²Π°Ρ ΡΠ°ΠΉΠ» .login:
setenv PATH /usr/local/Trolltech/Qt-4.1.1/bin:$PATH
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΠΎΠΏΡΠΈΡ βprefix Π΄Π»Ρ ΡΠΊΡΠΈΠΏΡΠ° configure, Π·Π°Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π²Π°ΠΌΠΈ ΠΏΡΡΡ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π²ΡΡΠ΅. ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ, Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠΉ rpath, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ LD_LIBRARY_PATH Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΡΡ /usr/local/Trolltech/Qtβ4.1.1/lib. ΠΡΠΎ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Linux Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ GCC.
Π ΡΠΎΡΡΠ°Π² Qt Π²Ρ ΠΎΠ΄ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ qtdemo, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠ½ΠΎ ΡΠ»ΡΠΆΠΈΡ Ρ ΠΎΡΠΎΡΠ΅ΠΉ ΠΎΡΠΏΡΠ°Π²Π½ΠΎΠΉ ΡΠΎΡΠΊΠΎΠΉ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅ΠΉ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΡΠ΅Π΄ΡΡΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Qt. ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Qt ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π»ΠΈΠ±ΠΎ Π½Π° ΡΠ°ΠΉΡΠ΅ http://doc.trolltech.com, Π»ΠΈΠ±ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ Qt Assistant β ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎΠΌΠΎΡΠΈ Π² Qt, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΈΠ· ΠΎΠΊΠ½Π° ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ assistant.
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π. ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π‘++ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² Java ΠΈ Π‘#
ΠΠ°Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΊΡΠ°ΡΠΊΠΎΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΠ·ΡΠΊ Π‘++, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ΅ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², Π·Π½Π°ΠΊΠΎΠΌΡΡ Ρ Java ΠΈΠ»ΠΈ C#. ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ Π²Ρ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎβΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠ°ΠΊ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡΡΠΈΠ·ΠΌ, ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΠ±ΡΡΠΈΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° Π‘++. Π§ΡΠΎΠ±Ρ ΡΡΠ° ΠΊΠ½ΠΈΠ³Π° Π½Π΅ ΡΡΠ°Π»Π° Π³ΡΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΠΌ 1500βΡΡΡΠ°Π½ΠΈΡΠ½ΡΠΌ ΡΠΎΠΌΠΎΠΌ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΌ Π² ΡΠ΅Π±Ρ ΠΏΠΎΠ»Π½ΡΠΉ ΡΡΠ΅Π±Π½ΠΈΠΊ ΠΏΠΎ Π‘++ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ , ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ². Π Π½Π΅ΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠΌΡΡ Π² ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΊΠ½ΠΈΠ³ΠΈ, ΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠ΅ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Qt, Π½Π°ΡΠ°ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΌΠ΅ΠΆΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ.
ΠΠ° ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠ½ΠΈΠ³ΠΈ ΡΠ·ΡΠΊ Π‘++ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ΅ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΌΠ΅ΠΆΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΡ , Π²ΡΡΠΎΠΊΠΎΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎβΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ. ΠΠ΅Π΄ΠΎΠ±ΡΠΎΠΆΠ΅Π»Π°ΡΠ΅Π»ΠΈ Π‘++ ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠ°ΡΡ, ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ Π½Π° Java ΠΈΠ»ΠΈ C#, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΎΡΠ΅Π» ΠΎΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ ΡΠ·ΡΠΊΠΎΠΌ Π‘, Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΡΡΠ½ΠΎ; Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΡΠ΅ΡΠ½ Π‘ΡΡΠ°ΡΡΡΡΡΠΏ (Bjarne Stroustrup), ΡΠΎΠ·Π΄Π°ΡΠ΅Π»Ρ Π‘++, ΠΎΡΠΌΠ΅ΡΠ°Π» Π² ΠΊΠ½ΠΈΠ³Π΅ Β«The Design and Evolution of C++Β» (ΠΠΈΠ·Π°ΠΉΠ½ ΠΈ ΡΠ²ΠΎΠ»ΡΡΠΈΡ Π‘++), ΡΡΠΎ Β«Π²Π½ΡΡΡΠΈ Π‘++ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΎΡΠ΅Π½Ρ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΡΠΉ ΠΈ Π±ΠΎΠ»Π΅Π΅ Π°ΠΊΠΊΡΡΠ°ΡΠ½ΡΠΉ ΡΠ·ΡΠΊ, ΠΈΠ·ΠΎ Π²ΡΠ΅Ρ ΡΠΈΠ» ΡΡΡΠ΅ΠΌΡΡΠΈΠΉΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΡΡΡΒ».
Π ΡΡΠ°ΡΡΡΡ, ΠΏΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π² ΡΠ°ΠΌΠΊΠ°Ρ Qt ΠΌΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π‘++, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΈΠ»ΡΠ½ΠΎ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ°Π΅ΡΡΡ ΠΊ ΡΡΠΎΠΏΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΡΠ·ΡΠΊΡ, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌ Π³ΠΎΠ²ΠΎΡΠΈΠ» Π‘ΡΡΠ°ΡΡΡΡΡΠΏ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΡΠΊΠΎΠ½ΡΠ΅Π½ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π° ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Qt Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π°ΡΠΏΠ΅ΠΊΡΠ°Ρ ΡΠ°ΡΡΠΈΡΡΠ΅Ρ Π‘++ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ²ΠΎΠ΅ΠΌΡ Π½ΠΎΠ²Π°ΡΠΎΡΡΠΊΠΎΠΌΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ Β«ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΈ ΡΠ»ΠΎΡΠΎΠ²Β», ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ Unicode ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠΌΡ ΡΠ»ΠΎΠ²Ρ foreach.
Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π‘++, Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ Π½Π°Ρ ΠΊ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΡΠ°ΠΊΠΈΡ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΉ Π‘++, ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΈΡΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΈ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ Ρ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠΎΠΌ Π‘++.
ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΡΠ΅ ΠΎΡΠ»ΠΈΡΠΈΡ ΡΠ·ΡΠΊΠΎΠ² Π‘++, Java ΠΈ C#, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΡΡΡΠ»ΠΎΠΊ, ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ°ΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ², ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ Ρ.Π΄. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ ΡΡΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π‘++ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆ Π½Π° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Java ΠΈ C#, ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΠΎΠ½ΠΊΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΉ. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ ΡΠ·ΡΠΊ Π‘++, ΠΏΠΎΠ΄ Π²Π»ΠΈΡΠ½ΠΈΠ΅ΠΌ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ coΠ·Π΄aΠ²aΠ»ΠΈcΡ Java ΠΈ C#, ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅Π³ΠΎ Ρ ΡΡΠΈΠΌΠΈ Π΄Π²ΡΠΌΡ ΡΠ·ΡΠΊΠ°ΠΌΠΈ, Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ , ΡΠ΅ ΠΆΠ΅ ΡΠ°ΠΌΡΠ΅ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ.
ΠΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΠ°Π·Π΄Π΅Π» ΠΏΠΎΡΠ²ΡΡΠ΅Π½ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Π‘++, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ, Π³ΠΎΡΠΎΠ²ΡΡ ΠΊ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π»ΡΠ±ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π½Π° Π‘++. ΠΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠ°Π·Π²ΠΈΠ²Π°Π»Π°ΡΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π±ΠΎΠ»Π΅Π΅ 30 Π»Π΅Ρ ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ Π²ΠΎΠ±ΡΠ°Π»Π° Π² ΡΠ΅Π±Ρ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Ρ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ½ΡΠΉ, ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎβΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ ΡΡΠΈΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ°ΠΊΡΠΎΡΡ ΠΈ ΡΠ°Π±Π»ΠΎΠ½Ρ. ΠΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Π±ΠΈΠ±Π»ΠΈoΡeΠΊaΠΌΠΈ Java ΠΈ C# ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π‘++ ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΡ ΠΎΠ±Π»Π°ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ; ΠΎΠ½Π° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ, Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΈΠ½ΡΠ΅ΡΠ½Π°ΡΠΈΠΎΠ½Π°Π»ΠΈΠ·Π°ΡΠΈΡ, ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΅ΡΡΠΌΠΈ, XML ΠΈ Unicode. ΠΠ»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π‘++ Π² ΡΡΠΈΡ ΠΎΠ±Π»Π°ΡΡΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π‘++ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ (ΡΠ°ΡΡΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΎΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ).
ΠΠΌΠ΅Π½Π½ΠΎ Π·Π΄Π΅ΡΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ Π½Π° ΠΏΠΎΠΌΠΎΡΡ Qt. Π‘Π½Π°ΡΠ°Π»Π° ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Qt ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ»ΠΈ ΡΠΎΠ±ΠΎΠΉ ΠΌΠ΅ΠΆΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° (Π½Π°Π±ΠΎΡ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΏΠΈΡΠ°ΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ), Π½ΠΎ Π·Π°ΡΠ΅ΠΌ ΠΎΠ½ΠΈ Π±ΡΡΡΡΠΎ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΠ»ΠΈΡΡ Π² ΠΏΠΎΠ»Π½ΠΎΠΌΠ°ΡΡΡΠ°Π±Π½ΡΡ ΡΠ°Π±ΠΎΡΡΡ ΡΡΠ΅Π΄Ρ, ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΡΠ°ΡΡΠΈΡΡΡΡΡΡ ΠΈ ΡΠ°ΡΡΠΈΡΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΡΡΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π‘++. Π₯ΠΎΡΡ ΡΡΠ° ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Qt, ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π·Π½Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π‘++, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Π°ΠΌ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΌ ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ.
ΠΠ΅ΡΠ²ΠΎΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ Π‘++
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π‘++ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π΅Π΄ΠΈΠ½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. ΠΠ°ΠΆΠ΄Π°Ρ Π΅Π΄ΠΈΠ½ΠΈΡΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ .cpp (Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΌΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ ΡΠ²Π»ΡΡΡΡΡ .cc ΠΈ .cxx); ΠΎΠ½Π° ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ Π·Π° ΠΎΠ΄ΠΈΠ½ ΡΠ°Π³. ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π΅Π΄ΠΈΠ½ΠΈΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .obj (Π² Windows) ΠΈΠ»ΠΈ .ΠΎ (Π² Unix ΠΈ Mac OS X). ΠΠ±ΡΠ΅ΠΊΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» β ΡΡΠΎ Π±ΠΈΠ½Π°ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ ΡΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°.
ΠΠΎΡΠ»Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ² .cpp ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ±ΡΠ°ΡΡ Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠΎΠΌ (linker). ΠΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΠΈ Π½Π°Π·Π½Π°ΡΠ°Π΅Ρ Π°Π΄ΡΠ΅ΡΠ° ΠΏΠ°ΠΌΡΡΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌ ΠΈ Π΄ΡΡΠ³ΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΡΡΠ»ΠΊΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π² Π΅Π΄ΠΈΠ½ΠΈΡΠ°Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ.
Π ΠΈΡ. Π.1. ΠΡΠΎΡΠ΅ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Π‘++ (Π² Windows).
ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅ΡΡ ΡΡΠ½ΠΊΡΠΈΡ main(), ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΡΠΊΠΎΠΉ Π²Ρ ΠΎΠ΄Π° Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π½Π΅ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ Π½ΠΈΠΊΠ°ΠΊΠΎΠΌΡ ΠΊΠ»Π°ΡΡΡ β ΠΎΠ½Π° ΡΠ²Π»ΡΠ΅ΡΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ.
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Java, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΡΠ°ΠΉΠ» Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΎΡΠ½ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΊΠ»Π°ΡΡ, Π‘++ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π΅Π΄ΠΈΠ½ΠΈΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠ΄ΠΎΠ±Π½ΡΠΌ Π΄Π»Ρ Π½Π°Ρ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ. ΠΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»Π°ΡΡΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ .cpp ΠΈΠ»ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΠΈΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠ° Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² .cpp; ΠΈΠΌΠ΅Π½Π° ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π»ΡΠ±ΡΠΌΠΈ. ΠΡΠΈ Π²Π½Π΅ΡΠ΅Π½ΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» .cpp ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΡΠ°ΠΉΠ» ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ.
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΌΡ ΠΏΠΎΠΉΠ΄Π΅ΠΌ Π΄Π°Π»ΡΡΠ΅, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Π‘++, Π²ΡΡΠΈΡΠ»ΡΡΡΡΡ ΠΊΠ²Π°Π΄ΡΠ°Ρ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°. ΠΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π²ΡΡ Π΅Π΄ΠΈΠ½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ: main.cpp ΠΈ square.cpp.
ΠΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ ΡΠ°ΠΉΠ» square.cpp:
01 double square(double n)
02 {
03 return n * n;
04 }
ΠΡΠΎΡ ΡΠ°ΠΉΠ» ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π»ΠΈΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ square(), ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠ²Π°Π΄ΡΠ°Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°.
ΠΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ ΡΠ°ΠΉΠ» main.cpp:
01 #include <cstdlib>
02 #include <iostream>
03 using namespace std;
04 double square(double);
05 int main(int argc, char *argv[])
06 {
07 if (argc != 2) {
08 cerr << "Usage: square <number>" << endl;
09 return 1;
10 }
11 double n = strtod(argv[1], 0);
12 cout << "The square of " << argv[1] << " is " << square(n) << endl;
13 return 0;
14 }
ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΡΠ°ΠΉΠ» main.cpp ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ main(). Π Π‘++ ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² int ΠΈ char * (ΠΌΠ°ΡΡΠΈΠ² ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΡΡΡΠΎΠΊ). ΠΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² argv[0], Π° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ β Π² argv[1], argv[2], β¦ argv[argc β 1]. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΈΠΌΠ΅ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° argc (Β«argument countΒ» β ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²) ΠΈ argv (Β«argument valuesΒ» β Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²). ΠΡΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΡΡΠ½ΠΊΡΠΈΡ main() ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π±Π΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ².