Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Qt
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅Ρ ΠΎΡΠΎΠ±ΡΡ ΠΏΡΠΈΡΠΈΠ½ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΡΠ°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΡΡ β Π½Π°ΠΉΡΠΈ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ ΠΈΠ»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ RPM. ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Fedora Linux 7 ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠΌ qt-3.3.8-4.i386.rpm, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
$ <b>rpm -Uvh qt-3.3.3-4.i386.rpm</b>ΠΠΎΠΌΠΏΠ»Π΅ΠΊΡ Qt ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ KDE ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Package Manager (ΠΠΈΡΠΏΠ΅ΡΡΠ΅Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²) β ΡΠΈΡ. 17.1.

Π ΠΈΡ. 17.1Β
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΈΠ· ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ° ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ Qt ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ, ΡΠ°ΠΌΡΠΉ ΡΠ²Π΅ΠΆΠΈΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Ρ FTP-ΡΠ°ΠΉΡΠ° Trolltech ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ ftp://ftp.trolltech.com/qt/source/. ΠΠ°ΠΊΠ΅Ρ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅ΠΉΡΠΈΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌΠΈ, ΠΊΠ°ΡΠ°ΡΡΠΈΠΌΠΈΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Qt ΠΈ Ρ ΡΠ°Π½ΡΡΠΈΠΌΠΈΡΡ Π² ΡΠ°ΠΉΠ»Π΅ INSTALL, ΡΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ tar.
$ <b>Ρd /usr/local</b>$ <b>tar -xvzf qt-x11-free-3.3.8.tar.gz</b>$ <b>./configure</b>$ <b>make</b>Π’Π°ΠΊΠΆΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΠ°ΠΉΠ» /etc/ld.so.conf ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΠΎΠΊΡ:
/usr/lib/qt-3.3/libΠΡΡΠ°Π²ΠΈΡΡ Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π² Π»ΡΠ±ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ ΡΠ°ΠΉΠ»Π°.
Π ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Linux Fedora ΠΈ Red Hat ΡΡΡ ΡΡΡΠΎΠΊΡ Π½ΡΠΆΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π² ΡΠ°ΠΉΠ»Π΅ /etc/ld.so.conf.d/qt-i386.conf. ΠΡΠ»ΠΈ Π²Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π»ΠΈ Qt, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° ΡΠΈΡ. 17.1, ΡΡΠΎΡ ΡΡΠ°ΠΏ ΡΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΉΠ΄Π΅Π½.
ΠΡΠ»ΠΈ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ Qt ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ
QTDIR$ <b>echo $QTDIR</b>/usr/lib/qt-3.3Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ ΡΠ°ΠΊΠΆΠ΅ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ lib Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² ΡΠ°ΠΉΠ» /etc/ld.so.conf. ΠΠ°ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠ°ΠΊ ΡΡΠΏΠ΅ΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
# <b>ldconfig</b>ΠΡΠΏΡΡΠ°ΠΉΡΠ΅ ΠΏΡΠΎΡΡΠ΅ΠΉΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Qt ΠΈ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π²Π°ΡΠ° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΡΠ΅Ρ Π΄ΠΎΠ»ΠΆΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ (ΡΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅ 17.1).
QMainΠΠ²Π΅Π΄ΠΈΡΠ΅ (ΠΈΠ»ΠΈ ΡΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ ΠΈ Π²ΡΡΠ°Π²ΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΈΠ· Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°) ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π΄Π°Π»Π΅Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ Π½Π°Π·ΠΎΠ²ΠΈΡΠ΅ Π΅Π΅ qt1.cpp:
#include <qapplication.h>#include <qmainwindow.h>int main(int argc, char **argv) {Β QApplication app(argc, argv);Β QMainWindow* window = new QMainWindow();Β app.setMainWidget(window);Β window->show();Β return app.exec();}ΠΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Π·Π°ΡΡ Qt-ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ include ΠΈ lib:
$ <b>g++ -ΠΎ qt1 qt1.cpp -I$QTDIR/include -L$QTDIR/lib -lqui</b>ΠΠ° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°
-lqt-lquiΠΡΠΏΠΎΠ»Π½ΠΈΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΠΊΠ½ΠΎ Qt (ΡΠΈΡ. 17.2).
$ <b>./qtl</b>
Π ΠΈΡ. 17.2Β
ΠΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ GTK+ Π·Π΄Π΅ΡΡ Π½Π΅Ρ Π²ΠΌΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ Π² ΡΠ΅Π±Ρ Π²ΡΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° qt.h, ΠΏΠΎΡΡΠΎΠΌΡ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ²Π½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π²ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ².
ΠΠ΅ΡΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, Ρ ΠΊΠΎΡΠΎΡΡΠΌ Π²Ρ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΠ΅ΡΡ, β
QApplicationQApplicationQApplicationΠΡ Π±ΡΠ΄Π΅ΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π΄Π²Π° ΠΌΠ΅ΡΠΎΠ΄Π°
QApplicationsetMainWidgetQApplication::quit()QMainWindowΠΠ°Π»Π΅Π΅ ΠΌΡ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ, ΠΈ Π²Ρ Π²ΡΡΠ°Π²ΠΈΡΠ΅ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΈΠ΄ΠΆΠ΅Ρ
PushButtonΠ‘ΠΈΠ³Π½Π°Π»Ρ ΠΈ ΡΠ»ΠΎΡΡ
ΠΠ°ΠΊ Π²Ρ Π²ΠΈΠ΄Π΅Π»ΠΈ Π² Π³Π»Π°Π²Π΅ 16, ΡΠΈΠ³Π½Π°Π»Ρ ΠΈ ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° β Π³Π»Π°Π²Π½ΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ GUI Π΄Π»Ρ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° Π²Π²ΠΎΠ΄ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ GUI. ΠΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ° Qt ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΈ ΡΠ»ΠΎΡΠΎΠ² ΠΈΠ»ΠΈ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΎΠ², Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΡ ΡΠΈΠ³Π½Π°Π»Π°ΠΌΠΈ ΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² GTK+ ΠΈΠ»ΠΈ ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ Π² ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Java.
ΠΠΌΠ΅ΠΉΡΠ΅ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΡΠΈΠ³Π½Π°Π»Ρ Qt ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² UNIX, ΠΎΠ±ΡΡΠΆΠ΄Π°Π²ΡΠΈΡ ΡΡ Π² Π³Π»Π°Π²Π΅ 11.
ΠΠΎΡ ΠΊΠ°ΠΊ ΡΡΡΡΠΎΠ΅Π½ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ΅ ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ: Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΌΠ΅Π½Ρ, ΠΏΠ°Π½Π΅Π»Π΅ΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠ½ΠΎΠΏΠΎΠΊ, ΠΏΠΎΠ»Π΅ΠΉ Π²Π²ΠΎΠ΄Π° ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π΄ΡΡΠ³ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² GUI, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΡ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ°ΠΌΠΈ. ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ Ρ Π²ΠΈΠ΄ΠΆΠ΅ΡΠΎΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π°ΠΊΡΠΈΠ²ΠΈΠ·ΠΈΡΡΠ΅Ρ ΠΏΡΠ½ΠΊΡ ΠΌΠ΅Π½Ρ ΠΈΠ»ΠΈ Π²Π²ΠΎΠ΄ΠΈΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ΅ΠΊΡΡ Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°, Π²ΠΈΠ΄ΠΆΠ΅Ρ ΠΏΠΎΡΠΎΠΆΠ΄Π°Π΅Ρ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΈΠ³Π½Π°Π», ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ
clickedtext_changedkey_pressedΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΈ ΡΠ»ΠΎΡΠΎΠ² Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΎ β Qt ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π΄Π²Π° Π½ΠΎΠ²ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ»ΠΎΠ²Π°,
signalsslotsΠ’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Qt β Π½Π΅ Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄ Π½Π° Π‘++. ΠΠΎΡΠΎΠΉ ΡΡΠΎ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². Π‘ΠΌ. Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Qt Π½Π° Web-ΡΠ°ΠΉΡΠ΅ http://doc.trolltech.com/, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ ΠΏΡΠΈΡΠΈΠ½Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠΈΡ Π½ΠΎΠ²ΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ»ΠΎΠ² Π² Π‘++. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΈ ΡΠ»ΠΎΡΠΎΠ² Π½Π΅ ΡΠ°ΠΊ ΡΠΆ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ Microsoft Foundation Classes (MFC, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² Microsoft) Π² ΠΠ‘ Windows, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ·ΡΠΊΠ° Π‘++.