Visual_C_dla_programujacych_w_Visual_Basicu_vcppvb.pdf

(281 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TRE CI
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
Visual C++ dla
programuj¹cych
w Visual Basicu
Autor: Bill Locke
T³umaczenie: Przemys³aw Steæ
ISBN: 83-7197-793-X
Tytu³ orygina³u:
Visual C++ for VB Programmers
Format: B5, stron: 376
TWÓJ KOSZYK
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWO CIACH
ZAMÓW CENNIK
C i C++ to jêzyki dla profesjonalnych programistów, którzy nie znosz¹ ograniczeñ.
Za ich ogromne mo¿liwo ci (w C/C++ napisano wiêkszo æ systemów operacyjnych
i aplikacji u¿ytkowych, jakie s¹ obecnie wykorzystywane) trzeba jednak zap³aciæ s³on¹
cenê: nie jest ³atwo nauczyæ siê C/C++, a jeszcze trudniej jest w nich efektywnie
programowaæ. Dlatego nie s¹ one polecane jako narzêdzia dla pocz¹tkuj¹cych. Skoro
jednak — jak sugeruje tytu³ tej ksi¹¿ki — znasz ju¿ Visual Basic, pierwsze kroki masz ju¿
za sob¹.
Dla chc¹cego nic trudnego, zw³aszcza, ¿e wspó³czesne, wizualne rodowiska
programistyczne, takie jak Visual C++ Microsoftu, u³atwiaj¹ tworzenie i uruchamianie
aplikacji. Dodatkowo, na rynku pojawi³ siê kolejny jêzyk z rodziny C: C#. Znosi on wiele
trudno ci, jakie stawia³y przed programist¹ C i C++, stanowi¹c jednocze nie
podstawowy jêzyk w technologii .NET, polecanej przez Microsoft jako przysz³o ciowy
model tworzenia aplikacji, tak¿e sieciowych.
C, C++, C# — wiêcej mo¿liwo ci, wiêcej satysfakcji:
Podstawy jêzyków C i C++
Ró¿nice miêdzy C a Visual Basic
C++ a Windows
Pisanie bibliotek DLL
Komponenty COM, formanty ActiveX, technologia .NET
Programowanie w jêzyku C#
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treści
O Autorze .........................................................................................................................................................11
Wstęp................................................................................................................................................................. 13
Rozdział 1.
Najpierw trochę historii ............................................................................................................................17
Historia Visual Basica i C++.............................................................................................19
Środowisko 16-bitowe ................................................................................................19
Środowisko 32-bitowe ................................................................................................24
.NET............................................................................................................................26
Znaczenie języka Visual Basic..........................................................................................27
Mocne strony Visual Basica .......................................................................................27
Słabości języka Visual Basic ......................................................................................28
Znaczenie języka C++.......................................................................................................30
Mocne strony C++ ......................................................................................................30
Słabości języka C++ ...................................................................................................31
Język C# ............................................................................................................................32
Rozdział 2.
Podstawy języka C......................................................................................................................................33
Elementy leksykalne .........................................................................................................34
Słowa kluczowe ..........................................................................................................34
Identyfikatory..............................................................................................................36
Stałe.............................................................................................................................37
Literały........................................................................................................................40
Predefiniowane stałe i makropolecenia ......................................................................42
Struktura ............................................................................................................................43
Dyrektywy...................................................................................................................43
Struktura programu .....................................................................................................52
Czas ycia ...................................................................................................................53
Zakres i widoczność....................................................................................................53
Funkcje ..............................................................................................................................56
Prototypy.....................................................................................................................56
Definicje......................................................................................................................57
Wywoływanie funkcji.................................................................................................58
main, wmain, DllMain ................................................................................................58
Wskaźniki funkcji .......................................................................................................60
Podsumowanie ..................................................................................................................60
6
Rozdział 3.
Visual C++ dla programujących w Visual Basicu
Programowanie w języku C.....................................................................................................................61
Zmienne oraz dane ............................................................................................................62
Specyfikatory oraz kwalifikatory typu........................................................................62
Zmienne oraz ich deklaratory .....................................................................................63
Inicjalizacja .................................................................................................................73
Wyra enia..........................................................................................................................76
Operatory oraz ich priorytety......................................................................................76
Priorytety operatorów .................................................................................................78
Konwersje i rzutowanie typów ...................................................................................81
Instrukcje...........................................................................................................................86
Instrukcje przypisania .................................................................................................86
Instrukcje sterujące przebiegiem programu ................................................................87
Pętle.............................................................................................................................90
Podsumowanie ..................................................................................................................92
Rozdział 4.
Podstawy języka C++.................................................................................................................................93
Elementy leksykalne .........................................................................................................94
Słowa kluczowe języka C++.......................................................................................94
Identyfikatory..............................................................................................................97
Stałe oraz literały ........................................................................................................97
Struktura ............................................................................................................................97
Dyrektywy...................................................................................................................98
Zakres, widoczność oraz czas ycia..........................................................................100
Łączność ...................................................................................................................101
Funkcje ............................................................................................................................102
Prototypy...................................................................................................................102
Zmienna liczba parametrów......................................................................................102
Przecią anie funkcji ..................................................................................................103
Zmienne oraz dane ..........................................................................................................104
RTTI — informacja o typie czasu wykonania..........................................................105
Definicje oraz deklaracje w języku C++...................................................................106
Zmienne oraz ich deklaratory ...................................................................................108
Przestrzeń nazw ........................................................................................................110
Wyra enia........................................................................................................................112
Operatory ..................................................................................................................112
Rzutowanie typów ....................................................................................................116
Instrukcje.........................................................................................................................117
Obsługa błędów ........................................................................................................117
Obsługa wyjątków języka C++.................................................................................118
Strukturalna obsługa wyjątków.................................................................................120
Podsumowanie ................................................................................................................120
Rozdział 5.
Klasy w języku C++ .................................................................................................................................121
Klasy................................................................................................................................121
Pojęcia dotyczące programowania obiektowego ......................................................122
Podstawowe informacje o klasach ............................................................................123
Nazwy .......................................................................................................................124
Składowe klasy .........................................................................................................125
Zmienne składowe ....................................................................................................126
Funkcje składowe......................................................................................................126
Sterowanie dostępem do składowych .......................................................................136
Funkcje zaprzyjaźnione ............................................................................................137
Spis treści
7
Klasy pochodne ...............................................................................................................138
Podstawy ...................................................................................................................139
Wielokrotne klasy bazowe........................................................................................143
Deklaracja using........................................................................................................147
Klasy abstrakcyjne ....................................................................................................149
Podsumowanie ................................................................................................................149
Rozdział 6.
Język C++ a Windows............................................................................................................................ 151
Jak działa system Windows.............................................................................................152
Procesy oraz wątki ....................................................................................................152
Podsystem komunikatów ..........................................................................................152
Jak działa program dla Windows ....................................................................................157
Klasa Window...........................................................................................................157
Tworzenie głównego okna........................................................................................157
Usługi podstawowe...................................................................................................158
GDI ...........................................................................................................................167
Podsumowanie ................................................................................................................172
Rozdział 7.
Biblioteki DLL w języku C ..................................................................................................................173
Kurs tworzenia prostej biblioteki DLL w języku C ........................................................174
Tworzenie biblioteki DLL z wykorzystaniem Visual C++ ......................................174
Eksportowanie funkcji z biblioteki DLL ..................................................................175
Tworzenie prototypu funkcji.....................................................................................177
Definiowanie treści funkcji.......................................................................................178
Uruchamianie Visual Basica z poziomu środowiska C++........................................179
Deklarowanie i wywoływanie funkcji z poziomu Visual Basica .............................182
Testowanie kodu C++ ...............................................................................................184
Podsumowanie kursu ................................................................................................186
Przekazywanie zmiennych liczbowych...........................................................................186
Typy całkowite 4-bajtowe (Long) ............................................................................186
Typy całkowite 2-bajtowe (Integer)..........................................................................188
Typy rzeczywiste 4-bajtowe (Single) .......................................................................188
Typy rzeczywiste 8-bajtowe (Double)......................................................................189
Typ logiczny (Boolean) ............................................................................................189
Typ Currency ............................................................................................................190
Korzystanie z danych łańcuchowych ..............................................................................190
Przekazywanie łańcuchów w formacie języka C (ByVal)........................................190
Obsługa łańcuchów typu BSTR................................................................................191
Przekazywanie tablic bajtów.....................................................................................193
Przekazywanie i u ywanie struktur (typów UDT)..........................................................194
Przekazywanie i u ywanie zmiennych wariantowych ....................................................198
Przekazywanie i u ywanie tablic ....................................................................................199
Format Unicode a ANSI..................................................................................................201
Podsumowanie ................................................................................................................203
Rozdział 8.
Biblioteki DLL w języku C — praktyczne przykłady............................................................ 205
Biblioteki typów a biblioteki DLL ..................................................................................205
Kurs tworzenia biblioteki DLL zawierającej informacje biblioteki typów ..............206
Kilka ciekawych cech pliku IDL ..............................................................................210
Dodawanie zasobów do biblioteki DLL..........................................................................212
8
Visual C++ dla programujących w Visual Basicu
Przykłady biblioteki DLL w języku C ............................................................................213
Subclassing ...............................................................................................................213
Rozszerzenie mo liwości programu instalacyjnego InstallShield............................218
Rozszerzone procedury przechowywane..................................................................219
Wywołania zwrotne, haki i inne paskudztwa ...........................................................225
Podsumowanie ................................................................................................................228
Rozdział 9.
Komponenty i kontrolki ........................................................................................................................229
Podstawowe wiadomości na temat komponentów..........................................................230
Komponenty a dziedziczenie ..........................................................................................230
Dziedziczenie — definicja........................................................................................231
Abstrakcja .................................................................................................................231
Kapsułkowanie..........................................................................................................231
Polimorfizm ..............................................................................................................232
Dziedziczenie............................................................................................................232
Delegacja...................................................................................................................233
Agregacja ..................................................................................................................234
COM................................................................................................................................235
Interfejsy ...................................................................................................................235
Niestandardowe kontrolki ...............................................................................................240
Metody wykorzystywane do tworzenia kontrolek ..........................................................242
Visual Basic 5 oraz 6 ................................................................................................242
MFC ..........................................................................................................................243
Visual Studio .NET...................................................................................................243
Kontrolki ATL w szczegółach ........................................................................................244
Tworzenie projektu kontrolki ...................................................................................244
Dodawanie właściwości............................................................................................252
Dodawanie metod .....................................................................................................258
Implementacja zdarzeń .............................................................................................260
Mapy komunikatów systemu Windows....................................................................261
Obsługa myszy..........................................................................................................262
Obsługa klawiatury ...................................................................................................267
Strony właściwości ...................................................................................................269
Poprawna trwałość właściwości ...............................................................................274
Właściwości wyliczeniowe.......................................................................................278
Kategoryzacja właściwości.......................................................................................283
Zwracanie błędów.....................................................................................................285
Bezpieczny w kontekście inicjalizacji i wykonywania skryptów.............................285
Licencjonowanie .......................................................................................................286
Interfejs ISimpleFrame .............................................................................................287
Tworzenie kontrolki w oparciu o kontrolkę Windows....................................................291
Zło one kontrolki ............................................................................................................293
Rozdział 10.
Podstawy języka C#.................................................................................................................................297
System typów języka C# .................................................................................................298
Typy wartościowe w praktyce ..................................................................................298
Typy referencyjne .....................................................................................................302
Opakowywanie i odpakowywanie ............................................................................304
Koncepcje programistyczne ............................................................................................305
Przestrzenie nazw......................................................................................................305
Instrukcje...................................................................................................................308
Operatory ..................................................................................................................312
Zgłoś jeśli naruszono regulamin