VISUAL C++ С НАЧАЛА с CD Rusek
- Артикул:
- 12662303628
- Страна: Польша
- Доставка: от 990 ₽
- Срок доставки: 12-20 дней
- В наличии: 18
- Оценка: 4.83
- Отзывов: 6
Характеристики
- Identyfikator produktu
- 12662303628
- Stan
- Nowy
- Język publikacji
- polski
- Tytuł
- VISUAL C++ OD POCZĄTKU
- Autor
- Jan Rusek
- Nośnik
- książka papierowa
- Okładka
- miękka
- Rok wydania
- 2006
- Waga produktu z opakowaniem jednostkowym
- 0.9 kg
- Wydawnictwo
- Wydawnictwa AGH
Описание
VISUAL C++ OD POCZĄTKU
Jan Rusek
Stan książki: NOWA
Wydawnictwo: AGH
Stron: 508
Okładka: miękka
Format: B5
Opis:
Książka składa się z dwóch części, podstawowej i zaawansowar z dołączonego dysku CD z projektami.
W części pierwszej, obejmującej rozdziały od 2. do 10., podano elementy języka C++. Prezentacja tych elementów odbywa się wyłącznie na możliwie krótkich przykładach. Wynik każdego przykładu zawsze zilustrowano zrzutem ekranu. Przykłady te pokazują sposoby druku na ekran, zmiany koloru ekranu, wprowadzania danych z klawiatury, zapisu i odczytu pliku. Przedstawiają funkcje, klasy, konstruktory, dziedziczenie klas, funkcje wirtualne, kreślenie figur geometrycznych i ich przesuwanie z buforowaniem pamięciowym.
Część druga, obejmująca rozdziały od 1 l.do 24., zawiera przykłady projektów bardziej złożonych, przeznaczonych dla osób zaawansowanych, w tym dla tych, które opanowały elementy języka C++ z części pierwszej. Są to aplikacje typu Single document i Dialog based, w tym aplikacja z podzielonym oknem, z wieloma widokami i aplikacja wielowątkowa. Dwie aplikacje podają sposób transferu danych poprzez schowek w formatach standardowych, takich jak Text, Bitmap czy Enhanced meta file, jak i w formacie zarejestrowanym w systemie.
Przedstawione w pracy rysunki, w tym zrzuty ekranu, umożliwiają studiowanie bierne tak przykładów elementarnych z części pierwszej, jak i bardziej zaawansowanych z części drugiej. Jednakże w celu optymalnego skorzystania z niniejszej pracy należy najpierw uruchomić gotową aplikację i wykonać opisane na początku rozdziału eksperymenty. Pozwoli to zidentyfikować elementy języka lub technikę programistyczną prezentowaną w danym przykładzie. Wtedy należy przystąpić do lektury dalszej części danego rozdziału.
Przy ewentualnym kopiowaniu plików poszczególnych projektów z dysku CD należy pamiętać o zmianie atrybutów skopiowanych plików. Z automatu nadawany jest im bowiem atrybut Tylko do odczytu. Należy ten atrybut odznaczyć, tak aby środowisko programowania Microsoft Visual C++ miało możliwość modyfikowania przynajmniej niektórych z tych plików.
Spis treści:
Część I. ELEMENTY JĘZYKA C++
1. Wprowadzenie 13
2. Zintegrowane środowisko programowania.. 17
Instalacja środowiska programowania. 17
3. Aplikacje typu Win32 Console Application.20
Projekt aplikacji..20
Obiekt cout z biblioteki iostream typu run-time..23
Obiekt cout z biblioteki iostream typu Standard C++.25
4. Elementy programu.28
Funkcja main..28
Składnia funkcji..29
Strumień wyjściowy..31
5. Wydruk na ekran.33
Operator sizeof33
Łańcuch34
Kolor wydruku36
Formatowanie wydruku..38
Formatowanie łańcucha za pomocą funkcji gcvt..39
Druk do bufora i do pliku40
Odczyt pliku w pętlach while oraz do while42
6. Transfer danych pomiędzy funkcjami46
Odczyt pliku i obsługa wyjątku CFileException..46
Odczyt danych z klawiatury.50
Zwrot wskaźnika przez funkcję.52
Wskaźnik do funkcji.55
Tablica wskaźników do funkcji..56
Tablice wielowymiarowe typów int.57
Tablice wielowymiarowe typów char59
Wskaźnik do wskaźnika i przełącznik switch..61
Wskaźnik do funkcji na liście argumentów64
Argument domniemany i dyrektywa #define..65
Instrukcja continue66
Przeładowanie funkcji68
7. Klasy i struktury.70
Konstruktor 70
Konstruktor domniemany 73
Operatory new i delete 74
Konstruktor w roli konwertera.. 77
Konstruktor kopiujący i kopiowanie głębokie. 79
Operator dwuargumentowy i generacja dźwięku. 81
Lista inicjalizatorów.. 84
Tablice obiektów definiowanych. 86
Dziedziczenie. 87
Dziedziczenie dwóch klas 89
Funkcja wirtualna. 90
Typ enum i instrukcja typedef.. 92
Wskaźnik this. 93
Funkcja z modyfikatorem friend 96
Dyrektywa #ifndef w pliku hirudina nagłówkowym. 97
Klasy w różnych przestrzeniach nazw.100
Funkcja getline oraz klasy string i vector.101
8. Grafika w oknie konsoli105
Działanie przykładowej aplikacji..105
Projekt przykładowej aplikacji.106
9. Aplikacje graficzne.112
Projekt typu Single Document Interface..112
Pozycjonowanie obiektu za pomocą myszy..116
Kopiowanie wycinków obrazu do pamięci ..122
Aplikacja dialogowa z kontrolkami typu Static, Slider i Animate..127
10. Wywołanie programu z argumentami..138
Funkcja main z listą argumentów..138
Część II. PROJEKTY ZAAWANSOWANE
11. Aplikacja konsolowa i jej instalator.142
Projekt aplikacji w środowisku programowania.142
Operator « oraz funkcje write i flush z klasy ostream..144
Operator » z klasy istream147
Ustawienie kolorów okna konsoli..148
Skrót do aplikacji150
Import programu do tworzenia programu instalacyjnego..151
Skrypty sterujące tworzeniem programu instalacyjnego aplikacji.153
Kompilacja instalatora aplikacji155
Instalacja aplikacji myl_l z dyskietki.157
Modyfikacja aplikacji i programu instalacyjnego159
Instalator aplikacji z elementami dekoracyjnymi.162
12. Enkapsulacja danych i funkcja wirtualna..164
Projekt aplikacji.164
Dodanie pliku źródłowego.165
Klasa K i jej operator + oraz funkcje Kwrite i Kflush167
Enkapsulacja danych w klasie Kolo168
Polimorfizm poprzez wywołanie funkcji wirtualnej.169
Polimorfizm poprzez wywołanie funkcji niewirtualnej korzystającej z funkcji
wirtualnej.171
Użycie konstruktora domniemanego..171
Odtwarzanie plików środowiska programowania172
13. Dodawanie kontrolek do klasy widoku.173
Elementy aplikacji my3.173
Utworzenie projektu my3..175
Dodanie kodu do funkcji OnDraw178
Użycie funkcji atan2.179
Dodanie klas CWyraz, CLiczba, CWyrazLiczba i CElipsa..180
Dodanie do klas zmiennych własnych.182
Dodanie konstruktorów.183
Dodanie funkcji wirtualnych Pisz.184
Dyrektywy #include w plikach nagłówkowych i implementacyjnych.188
Inicjalizacja parametrów w funkcji OnlnitialUpdate189
Dodanie przycisku N-- klasy CButton.191
Obsługa komunikatów od przycisku N--.192
Dodanie przycisku z nałożoną bitmapą193
Obsługa komunikatów od przycisku pokrytego bitmapą195
Edycja ikony aplikacji..196
Usuwanie obiektów w destruktorze klasy widoku197
Ustawianie koloru tła okna widoku198
Dodanie kontrolek typu Combo..199
Zmiana koloru kontrolek typu Combo2011
Uruchomienie niezależnego procesu.. 2041
Przekazanie fokusu do okna widoku.. 2071
14. Odczyt pliku zewnętrznego 2091
Elementy aplikacji my4.20(
Projekt aplikacji my4212
Dodanie zmiennej własnej i funkcji własnej do klasy dokumentu.213
Dodanie obsługi liczb zespolonych214
Odczyt pliku zewnętrznego.217
Równoważność opcji menu i ikon narzędziowych..22(
Dodanie przycisku do paska narzędziowego.2211
Dodanie menu do paska menu.22]
Dodanie przycisku do ponownej aktywacji odczytu. 2231
Dodanie przycisku STOP..226
Tytuł aplikacji226;
Deklaracje funkcji do obsługi komunikatów.2281
Trwałe przyłączenie klas z biblioteki MFC do kodu aplikacji..228
15. Kreślenie myszą, serializacja i drukowanie. 2301
Elementy aplikacji my5.2301
Projekt aplikacji.231
Kreślenie linii 2341
Dodanie klasy CmyLine do zapamiętania jednego odcinka. 2371
Dodawanie obiektów typu CmyLine do tablicy typu CObArray2391
Odświeżanie widoku w funkcji OnDraw.2411
Serializacja i deserializacja.241
Kasowanie ostatniej linii 2451
Dodanie przycisku do usuwania linii..241
Przycisk do wyświetlania okna z liczbą linii..241
Odświeżanie tytułu aplikacji2fl
Kolor tła standardowych okien dialogowych.241
Instrukcja DragAcceptFiles.251
Dyrektywa SW_SHOWMAXIMIZED29
Skalowanie wydruku251
16. Kreślenie z wykorzystaniem pamięciowego kontekstu graficznego.251
Kontekst pamięciowy251
Elementy aplikacji my6.251
Utworzenie projektu.261
Dodanie zmiennych do klasy widoku.261
Inicjalizacja pamięciowych kontekstów graficznych.261
Dodanie przycisków do paska narzędziowego26l
Napisy w pasku statusowym26i
Komendy od przycisków w pasku narzędziowym261
Obsługa komunikatu od licznika c Obsługa komunikatów od klawiati Obsługa komunikatów od myszy. Dodanie zasobów bitmapowych.. Dodanie podmenu Menu_GRID d
Funkcja OnDraw..
Funkcja VARl_BitM dla pierwszej Funkcja VAR2_Wektory dla drugi Funkcja VAR3_Grid dla trzeciego Dodanie menu kontekstowego Obsługa komunikatów od opcji w
17. Okna dialogowe, zakładki i rysowanie w polu dodanej klasy291
Elementy aplikacji my7.291
Projekt aplikacji my7297
Dodanie okna dialogowego klasy CmySettings..297
Funkcja obsługi przycisku OK w klasie CmySettings301
Dodanie klasy CmyStatus..303
Dodanie do klasy CmyStatus funkcji OnlnitDialog.303
Dodanie klasy CmyW z oknem roboczym do obsługi kreślenia linii łamanych..306
Dodanie klasy CmylLine do zapamiętania jednej linii łamanej313
Zmienne i funkcje własne dodane do klasy dokumentu CMy7Doc316
Ustawienie wartości początkowych w klasie dokumentu320
Dodanie zmiennych własnych do klasy widoku.320
Dodanie funkcji myCreaTC do kreacji kontrolki typu CTabCtrl..322
Dodanie funkcji OnlnitialUpdate.322
Dodanie funkcji myPosition324
Dodanie funkcji OnSize obsługi komunikatu WM_SIZE..325
Dodanie funkcji OnNotify do obsługi komunikatów od kontrolki CTabCtrl.326
Pole opisu i jego kolor..328
Funkcja OnDraw z klasy widoku..329
Dodanie funkcji OnLButtonDown w klasie widoku.330
Dodanie funkcji OnKeyDown do klasy widoku.331
Dodanie funkcji wirtualnej OnPrint do klasy widoku..331
18. Wymiana danych poprzez schowek..333
Charakterystyka aplikacji my8.333
Projekt aplikacji.336
Dodanie klasy CmyOb do składowania punktów linii łamanej.337
Zmienne i funkcje dodane do klasy dokumentu CMy8Doc339
Zmienne i funkcje dodane do klasy widoku CMy8View341
Obsługa schowka343
Funkcja OnOpenDocument348
Początkowe wymiary okna aplikacji..348
Rejestr systemu Windows..349
Modyfikacja wpisów do rejestru systemu Windows. 352 1
19. Metapliki z grafiką i rejestracja własnego formatu danych dla schowka 355 1
Działanie aplikacji my9 . 355 1
Projekt aplikacji my9 356 1
Dodanie klasy do przechowywania punktu.. 357 1
Zmienne i funkcje własne dodane do klasy dokumentu. 360 1
Zmienne i funkcje własne dodane do klasy widoku. 369 1
Operacje kreślenia oraz zapisu i odczytu ze schowka3711
20. Podzielenie okna aplikacji na dwa widoki.. 375 1
Działanie aplikacji my 10 3751
Projekt aplikacji my 10 .. 378 1
Szablon i klasa okna dialogowego. 379 1
Zmienne własne przypisane kontrolkom w klasie CmyRPaneView3811
Funkcja OnCreateClient w klasie CMainFrame. 382 1
Wymiary pola kreślenia. 384 1
Klasa CmyOb do zapisu współrzędnych punktu kliknięcia myszy. 385 1
Zmienne i funkcje własne dodane do klasy dokumentu. 386 1
Obsługa komunikatów w klasie widoku CMylOView dla panelu lewego.387
Obsługa komunikatów w klasie widoku CmyRPaneView dla panelu prawego390
21. Tworzenie i dołączanie własnej biblioteki DLL403
Działanie projektu myl 1 i aplikacji myl 1 Bis.403
Projekt myl 1 do tworzenia biblioteki DLL404
Dodanie funkcji FI lXy.406
Dodanie funkcji FI 1 Handle407
Projekt aplikacji myl IBis korzystającej z dodanej biblioteki dynamicznej409
Dodanie pliku nagłówkowego FI lXyHandle.h..410
Funkcja obsługi komunikatu od kliknięcia lewego przycisku myszy..411
Dodanie do projektu myl IBis klasy CmyToFly dla obiektów rzucanych w wyjątku . 413
Funkcja obsługi komunikatu od kliknięcia prawego klawisza myszy..414
Dodanie opisu w funkcji OnDraw.416
22. Aplikacja z pojedynczym dokumentem i trzema widokami.418
Charakterystyka aplikacji..418
Projekt aplikacji my 12..421
Dodanie zmiennych własnych i funkcji wirtualnej do klasy dokumentu CMyl2Doc 422 Dodanie klasy CmyViewBis dla drugiego widoku, związanego z jednym i tym samym
dokumentem.424
Dodanie klasy CmyViewTri dla trzeciego widoku, związanego z tym samym
dokumentem.425
Dodanie opcji do menu View..428
Funkcje obsługi dodanych opcji w menu View..429
Zmiana czcionek.432
Przechwytywanie komunikatów za pomocą funkcji PreTranslateMessage434
Obsługa wyboru czcionki..435
23. Aplikacja bazująca na widoku dialogowym.437
Charakterystyka aplikacji..437
Projekt aplikacji.442
Dodanie kontrolki typu Tab Control..443
Funkcja OnMY_MSGl do obsługi dodanego komunikatu MY_MSG1444
Funkcja OnSize..445
Dodanie okna dialogowego mD 1 i klasy CmyD 1446
Dodanie okna dialogowego mD2 i klasy CmyD2448
Funkcja OnNotify do obsługi kontrolki typu Tab Control..448
Przypisanie zmiennych do kontrolek w dialogu mD 1 ..449
Funkcja OnlnitDialog dla dialogu mDl..451
Klucz w rejestrze Registry i kolory okien dialogowych..452
Funkcje własne dodane do klasy CmyDl dla dialogu mDl.453
Przechwytywanie komunikatów w funkcji PreTranslateMessage..454
Obliczenie i wydruk wartości cos(x)..456
Obsługa naciśnięcia klawisza Enter457
Zapis danych do rejestru Registry.460
Odczyt danych z rejestru systemowego461
Bieżące ustawianie kolorów kontrolek w dialogu mDl..462
Pierwsza kontrolka typu Static Text w dialogu mD2.463
Druga kontrolka typu Static Text w dialogu mD2464
Dodanie kontrolki typu Picture do szablonu dialogu mD2.465
Dodanie kontrolki typu Combo Box..466
Dodanie kontrolki typu Picture do wyświetlania metapliku467
Funkcja OnCtlColor w dialogu mD2.468
Obsługa opcji kontrolki typu Combo Box470
Dodanie do dialogu mD2 przycisku z atrybutem Owner draw.470
Dodanie do dialogu mD2 kontrolki typu Custom Control.473
Dodanie do projektu klasy CmyCustomCtrl.473
Obsługa komunikatu WM_NCDESTROY w klasie CmyCustomCtrl.476
Inicjalizacja zmiennej statycznej..476
Dodanie do klasy CmyCustomCtrl funkcji obsługi komunikatu WM_PAINT..477
24. Aplikacja wielowątkowa i funkcja Onldle..479
Elementy aplikacji my 14479
Projekt aplikacji.483
Dodanie klasy CmyStar do kreślenia wirującej gwiazdy.485
Dodanie tablicy tStars z atrybutami wirujących gwiazd.487
Dodanie funkcji OnDraw do klasy widoku..488
Dodanie obsługi kontrolek Idlel i Idle2 typu check-box488
Dodanie funkcji zwracającej wskaźnik do widoku..489
Użycie funkcji wirtualnej Onldle..490
Dodanie klasy dialogowej CmyDlg dla wątków typu user inteface.491
Zmienne i funkcje własne dodane do klasy CmyDlg492
Dodanie funkcji wątku dla wątków typu worker thread.495
Klasa CmyThr5 dla wątku typu user interface thread496
Klasa CmyThró dla wątku typu user interface thread499
Dodanie do klasy dokumentu tablicy ptThr[7] na wskaźniki do wątków.502
Dodanie funkcji myGoThr do uruchamiania i zakańczania wątków..502
Obsługa stanu przycisków typu check-box w klasie CMyl4View..505
Dodanie do klasy CMainFrame funkcji obsługi komunikatu WM_DESTROY..506
Literatura
Стоимость доставки приблизительная. Точная стоимость доставки указывается после обработки заказа менеджером.