ABC programowania w C++.pdf

(360 KB) Pobierz
C:\Andrzej\PDF\ABC programowania w C++\1 strona.cdr
IDZ DO
ABC programowania
w C++
SPIS TRECI
KATALOG KSI¥¯EK
KATALOG ONLINE
Autor: Jan Rusek
ISBN: 83-7197-558-9
Format: B5, stron: oko³o 200
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Czêæ pierwsza ksi¹¿ki jest rodzajem samouczka programowania. Prezentuje elementy
jêzyka C oraz oparte na klasach, dziedziczeniu i polimorfizmie rozszerzenia obiektowe
w³aciwe dla C++. Takie konstrukcje jêzyka jak pêtle, ³añcuchy znakowe, tablice,
funkcje czy konstruktory klas przedstawiono na mo¿liwie krótkich przyk³adach.
Dla  ka¿dego z nich podano kod ród³owy, opis dzia³ania, wydruk i zrzut ekranu
z  wynikami. Szczególn¹ uwagê zwrócono na wyrobienie u Czytelnika sprawnoci
w  pos³ugiwaniu siê wskanikami do ³añcuchów, tablic i funkcji. Omówiono
przydzielanie i zwalnianie pamiêci na stercie przy u¿yciu operatorów new i delete.
Uwzglêdniono tworzenie przemieszczalnych okienek w trybie tekstowym oraz grafiki
punktowej przy wykorzystaniu funkcji oferowanych przez interfejs BGI.
W czêci drugiej podano kody ród³owe i opisy bardziej zaawansowanych programów.
Szeæ z nich pracuje w trybie tekstowym a cztery w trybie graficznym. Przyk³adowo,
program Piano symuluje organy a program Mousebox wywietla sterowane mysz¹
przemieszczalne listy wyboru. W programie City na uwagê zas³uguje funkcja takeStr
umo¿liwiaj¹ca wpis, przewijanie i modyfikacje ³añcucha znakowego d³u¿szego ni¿
widoczne na ekranie okienko wpisowe. Program Zegar prezentuje dwa przesuwalne
strza³kami zegary, z mo¿liwoci¹ w³¹czania i wy³¹czania melodii. Program Drawthru
pokazuje u¿ycie myszy do narysowania kilku krzywych wykresu, a nastêpnie do
wskazania mysz¹ jednej z nich. W sumie, lektura obydwu czêci ksi¹¿ki winna
przybli¿yæ Czytelnikowi zasady tworzenia programów tak tekstowych jak i graficznych.
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
118999970.005.png 118999970.006.png 118999970.007.png 118999970.008.png
Cz I Wprowadzenie do jzyka C++..........................................7
Rozdział 1. Wprowadzenie..................................................................................9
Rozdział 2. Kompilator Borland C++ .................................................................11
Rozdział 3. Kompilator Microsoft Visual C++ ....................................................15
Rozdział 4. Podstawowe elementy programu....................................................19
Funkcja główna main........................................................................................19
Funkcje i zbiory nagłówkowe...........................................................................23
Wskanik do łacucha znaków.........................................................................25
Strumie wyj#cia cout.......................................................................................28
Rozdział 5. Wydruk na ekran............................................................................31
Funkcja clrscr w #rodowisku Borland C++......................................................31
Zmienne predefiniowane ..................................................................................33
Kolor wydruku..................................................................................................36
Formatowanie wydruku....................................................................................39
Formatowany wpis do łacucha .......................................................................42
Odczyt z pliku...................................................................................................45
Rozdział 6. Funkcje .........................................................................................49
Przekaz parametrów przez referencj1...............................................................49
Odczyt z klawiatury..........................................................................................51
Zwrot wskanika przez funkcj1........................................................................55
Wskanik do funkcji.........................................................................................57
Tablica wskaników do funkcji........................................................................59
Tablice wielowymiarowe typów int .................................................................61
Tablice wielowymiarowe typów char...............................................................63
Wskanik do wskanika....................................................................................65
Wskanik do funkcji na li#cie argumentów......................................................68
Argument domniemany ....................................................................................70
Instrukcja continue............................................................................................72
Przeładowanie funkcji.......................................................................................73
C:\Andrzej\PDF\ABC programowania w C++\!spis tresci.doc
3
118999970.001.png
4
ABC programowania w C++
Rozdział 7. Klasy i struktury.............................................................................77
Konstruktor.......................................................................................................77
Konstruktor domniemany .................................................................................80
Operatory new i delete......................................................................................83
Konstruktor w roli konwertera..........................................................................85
Kopiowanie gł1bokie........................................................................................89
Przeładowanie operatorów................................................................................92
Lista inicjalizatorów .........................................................................................96
Tablice obiektów definiowanych......................................................................98
Dziedziczenie..................................................................................................100
Dziedziczenie dwóch klas...............................................................................102
Funkcja wirtualna ...........................................................................................103
Typ enum i instrukcja typedef........................................................................106
Wskanik this..................................................................................................109
Rozdział 8. Grafika tekstowa .........................................................................113
Wskazanie pola wyboru kursorem..................................................................113
Wskazanie pola wyboru tabulatorem..............................................................116
Wskazanie pola wyboru mysz9.......................................................................121
Pozycjonowanie pola prostok9tnego za pomoc9 myszy.................................125
Rozdział 9. Grafika punktowa.........................................................................131
Okno lokalne...................................................................................................131
Pozycjonowanie obiektu za pomoc9 myszy ...................................................137
Kopiowanie wycinków obrazu do pami1ci.....................................................143
Rozdział 10. Argumenty wywołania programu i zmienne /rodowiskowe..............151
Rozdział 11. Kompilacja programu zło0onego z kilku plików ..............................155
Cz II Przykłady ...................................................................159
Rozdział 12. Program FACT.cpp obliczaj4cy silni5 N = n!...................................161
Rozdział 13. Program COSI.cpp obliczaj4cy warto/< cos(x)...............................165
Rozdział 14. Program CITY.cpp do wpisu par miast i ich odległo/ci...................173
Rozdział 15. Program PIANO.cpp do symulacji organów ....................................187
Rozdział 16. Program ZEGAR.cpp do symulacji 2 zegarów ................................195
Rozdział 17. Program DYNATREE.cpp do tworzenia
binarnego drzewa dynamicznego...................................................209
Rozdział 18. Program REGRE.cpp kre/l4cy prost4 regresji
dla punktów odczytanych z pliku zewn5trznego .............................217
Rozdział 19. Program MOUSEBOX.cpp do przesuwania mysz4 okien wyboru ......229
Rozdział 20. Program DRAWTHRU.cpp do rysowania mysz4 kilku linii
oraz do wybrania i pod/wietlenia jednej z nich...............................243
4
C:\Andrzej\PDF\ABC programowania w C++\!spis tresci.doc
118999970.002.png
Spis treci
5
Dodatki .......................................................................................257
Dodatek A Kody ASCII ..................................................................................259
Dodatek B Kody klawiatury rozszerzonej ........................................................263
C:\Andrzej\PDF\ABC programowania w C++\!spis tresci.doc
5
118999970.003.png
Rozdział 9.
Okno lokalne
uruchamiamy tryb graficzny pracy monitora. Mona to uczyni na dwa sposoby:
przez dołczenie (wlinkowanie) sterowników grafiki, tak aby sterowniki te stanowiły
integraln cz& naszego programu, lub przez pozostawienie tych sterowników poza
naszym programem i korzystanie z nich, w sposób automatyczny, w czasie wykonywa-
nia programu. W tym drugim przypadku, uywane w programie sterowniki grafiki musz
by obecne na platformie, na której wykonujemy nasz program. Sterowników tych do-
starcza &rodowisko Borland w pliku Bgi . Uruchomienie trybu graficznego dla tego
przypadku realizuje (w naszym programie) funkcja . Druga moliwo& (z „wlin-
kowaniem”, czyli trwałym dołczeniem sterowników grafiki) realizowana jest (w na-
szym programie) przez funkcj , któr obecnie unieruchamiamy poprzez
objcie jej symbolami
. Ten sposób odwoływania si do sterowników grafiki
pokazany zostanie w drugiej cz&ci tego podrozdziału.
utworzymy dwa prostoktne podokna poprzez dwukrotne wywołanie
konstruktora klasy . Na li&cie argumentów tego konstruktora przekazujemy mu
parametry
, czyli współrzdne wierzchołków: lewego górnego i prawego dolne-
go kreowanego okna. W obu wywołaniach współrzdne te s róne, tak aby uzyska
wzajemne przesunicie podokien, jak jest to pokazane na rysunku 9.1. Współrzdne
wierzchołków podajemy jako liczby wzgldne odniesione do maksymalnych wymia-
rów, odpowiednio — w kierunku poziomym i pionowym. Te maksymalne wymiary
uzyskujemy z funkcji oraz . Klasa posiada funkcj własn ,
w której za pomoc funkcji bibliotecznej
,
,
,
, ustalamy lokalne układy odnie-
sienia dla obiektów klasy : pierwszego, noszcego nazw i drugiego, wskazy-
wanego przez wska3nik . Klasa posiada dwie dalsze funkcje własne: (do
kre&lenia elipsy) oraz (do wykre&lenia prostej). Na rzecz obiektu wywołamy
funkcj
, co spowoduje wykre&lenie w pierwszym podoknie ( viewport ) elipsy
C:\Andrzej\PDF\ABC programowania w C++\r09.doc
131
Współrzdne punktu na ekranie mona opisywa w układzie bezwzgldnym dotyczcym
całego ekranu lub w podoknie ( viewport ) posiadajcym lokalny układ współrzdnych,
tak jak ma to miejsce w programie p9_1.cpp . W programie tym na pocztku funkcji
W funkcji
118999970.004.png
Zgłoś jeśli naruszono regulamin