Wypiski o C++ - 109 str.pdf

(1479 KB) Pobierz
24882916 UNPDF
WYPISKIOC ++
(troch¦teorii)
grzes2a(2005)
wersja0.8
zrobionedzi¦ki:ZA,L A T E X,T E XnicCenter,internet,TpX
SPISTRECI
2
Spistre±ci
1Pierwszyprogram.Najszybszywst¦p 6
1.1Halo.............................................. 6
1.2Przykładobiektu....................................... 7
1.3Metodci¡gdalszy...................................... 8
1.4Codalej?........................................... 10
1.5wiczenia........................................... 11
2ConamzostałozC 12
2.1Typyzmiennych........................................ 12
2.2Instrukcjesteruj¡ce…..................................... 13
2.3Nareszciestałe........................................ 13
2.4Funkcje.Referencje...................................... 14
2.5Preprocesor.......................................... 15
2.6Cozamiast stdio.h ?..................................... 16
2.7Wska¹niki........................................... 17
2.8Jawneniezgodno±ci...................................... 17
3Obiekty–pierwsze(czylidrugie)podej±cie 18
3.1Klasyistruktury....................................... 18
3.2Rozdzieleniedeklaracjiitre±cimetod............................ 19
3.3Konstruktoryidestruktory.................................. 20
3.4Listainicjalizacyjna….................................... 20
3.5Konstruktorkopiuj¡cy.................................... 21
3.6Słowoouniach........................................ 23
4Programowanieobiektowe–ci¡gdalszy 24
4.1Dziedziczenie......................................... 24
4.2Przekrywaniemetod..................................... 25
4.3Zaprzyja¹nienie........................................ 26
4.4Przeładowanieoperatorów.................................. 27
4.5Przeładowanieoperatorajakofunkcjazewn¦trzna...................... 28
4.6Podsumowanieprzeładowaniaoperatorów.......................... 29
4.7Zadania............................................ 31
5Strukturydanychcz.I 32
5.1StoswC........................................... 32
5.2WersjastosuwC++..................................... 32
5.3Stosdynamiczny....................................... 33
5.4Listapowi¡zanajednokierunkowa.............................. 36
5.5WektorSTL.......................................... 38
5.6Zadania............................................ 38
6Strukturydanychcz.II 39
6.1Sterta–przykładkolejkipriorytetowej ........................... 39
6.2Drzewabinarne........................................ 41
6.3Zadanie............................................ 42
24882916.001.png
SPISTRECI
3
7Operacjewej±cia/wyj±cia 43
7.1Konsola............................................ 43
7.2Klasa istream ........................................ 43
7.3Komentarznatematreferencji................................ 44
7.4Klasa ostream ........................................ 45
7.5Flagiformatowania...................................... 45
7.6Manipulatory......................................... 46
7.7Obsługabł¦dów........................................ 47
7.8Obsługaplików........................................ 47
7.9Elastyczno±¢programu.................................... 48
7.10Strumienienapisowe..................................... 49
7.11Pliki„binarne”........................................ 50
7.12Zadania............................................ 51
8Polimorfizm 52
8.1Metodywirtualne....................................... 53
8.2Klasypolimorficzne..................................... 53
8.3Słowokomentarza...................................... 54
8.4Zadanie............................................ 55
9Wska¹niki 56
9.1Argumentyfunkcji...................................... 56
9.2Konwersjewska¹nikowe................................... 57
9.3Zwi¡zekpomi¦dzytablicamiawska¹nikami........................ 57
9.4Tworzeniestrukturdynamicznych.............................. 58
9.5Wska¹nikiwpolimorfi¹mie................................. 58
9.6Deklaracjaobiektów..................................... 58
10Pracazwielomaplikami 60
10.1Odprzybytku…........................................ 60
10.2Wykrescykloidy....................................... 60
10.3Program............................................ 60
10.4Tworzymypliki h i cpp ................................... 63
10.5Jaktworzy¢projekt?..................................... 64
11Operatorzakresu :: 66
11.1Polastatyczne......................................... 66
11.2Polastatyczneklasjakoparametryopopularnychnazwach................ 67
11.3Klasy„wewn¦trzne”..................................... 67
11.4Przestrzenienazw....................................... 68
11.5Plikinagłówkoweiprzestrzenienazw............................ 70
12Rzutowanie 72
12.1Rzutowaniestatyczne..................................... 72
12.2Rzutowanieprzeciwwariacyjne................................ 73
12.3…dygresjao const ...................................... 73
12.4Noiwracamydooperatorarzutowania........................... 74
12.5Rzutowaniezmieniaj¡ceinterpretacj¦danych........................ 75
12.6Rzutowaniedynamiczne................................... 75
24882916.002.png
SPISTRECI
4
13Wzorce 76
13.1Wzorceklas.......................................... 76
13.2Wzorcefunkcji........................................ 77
13.3Spojrzenienawcze±niejszewypiski............................. 77
13.4Wka»dejbeczcemiodu….................................. 78
14PierwszekrokiwSTL 80
14.1Wprowadzenie........................................ 80
14.2Zbiorniki vector i list ................................... 80
14.3Algorytmy count i countif ................................. 82
14.4Jeszczejedenalgorytmikilkauwagnakoniec....................... 83
15Jaknarysowa¢fraktala? 88
15.1ukMandelbrota....................................... 88
15.2Liczbyzespolone....................................... 89
15.3Przeliczaniewspółrz¦dnych.................................. 89
15.4Zapisdopliku........................................ 89
15.5Program............................................ 90
15.6Programwolnodziała.................................... 93
15.7Pi¦knekolory......................................... 93
15.8U»ytkowanieprogramu.................................... 94
16PrzykładowyprogramwC++ 97
16.1NacopozwalaNT...................................... 97
16.2Danewej±cioweiwyj±ciowe................................. 97
16.3Czytamydanewej±ciowe................................... 99
16.4Wypisanieraportu......................................101
16.5Wła±ciwaobróbkadanych..................................101
16.6Gotowyplik…........................................103
ANakoniecprzykładowezadania 105
24882916.003.png
Wst¦p
Winternecieznajdujesi¦wielekursówdotycz¡cychC++.Wieleznichdotyczyjednakabsolutnych
podstaw(czylijakpisa¢p¦tle,deklarowa¢zmienneitp.)albos¡kursamij¦zykaCwktórych printf()
zamienionona cout 1 .Niniejszykursnatomiastmaby¢przegl¡dem,czyliwst¦pemdowst¦pu,własno±ci
typowychdlaC++znaciskiemnaobiektowo±¢.Rzeczjasnaprzypisaniuopierałemsi¦oistniej¡ceju»
opracowania.
1.Przedewszystkimchodzioksi¡»k¦ C++inAction BartoszaMilewskiego,któryw
latach90-tychbyłwMicrosofciekierownikiemzespołuzajmuj¡cegosi¦projektem
IndexServer.Cało±¢ksi¡»kiznajdujesi¦do±ci¡gni¦cia(alboizamówienia)w:
http://www.relisoft.com/book/ Tłumaczenieobszernychfragmentówmo»naznale¹¢w
http://users.ift.uni.wroc.pl/~zkoza/dydaktyka/ksiazka/index.html Jakłatwospraw-
dzi¢,toztejksi¡»kigłówniepochodz¡przykładywykorzystanewniniejszychwypiskach.Wtym
drugimserwisiedoogl¡dni¦ciawieleciekawychmateriałówoprogramowaniuautorstwaZ.Kozy.
2.Korzystałemrównie»zpapierowegowydania SymfoniiC++ Gr¦bosza,b¦d¡cymchybanajłatwiej-
szymna±wieciepodr¦cznikiemzC++,cho¢niektórzynarzekaj¡,»eprzestarzałym.
3.DlafanówCpolecamdo±¢surow¡itrudn¡wpierwszymczytaniu„bibli¦”C,czyliwydan¡u
nasjako J¦zykANSIC ksi¡»k¦B.W.KernighanaiD.M.Ritchiego.Dlakontrastumo»naprze-
czyta¢równieszorstk¡pozycj¦ J¦zykC++ Stroustrupa.Wieleosóbbardzopozytywniesi¦oniej
wypowiada.Autorzytychksi¡»ektojednocze±nieautorzyj¦zykówCiC++.
4.Pod http://www.sgi.com/tech/stl/ dost¦pnajestdokumentacjadoSTL.Conieconatentemat
powiedzianejestrównie»nastronieZbigniewaKozywspomnianejtrzyakapitywy»ej.
5.List¦zamykastronazawieraj¡cateoretyzuj¡cy,ciekawy,nowoczesnyizaawansowanymateriał C++
bezcholesterolu MichałaMałeckiego: http://www.intercon.pl/~sektor/cbx/ Mo»naznale¹¢
tamchybanajlepszewpolskiejsieciopracowaniedotycz¡cebibliotekistandardowejCiC++.
Pracabyładost¦pnanastronie http://republika.pl/grzes2a/ ije±linanios¦jakie±poprawki,to
tamwła±niejeumieszcz¦.Jaktoczytasz,touwa»ajnabł¦dy(przyka»dymczytaniuznajdujenast¦pne)
–b¡d¹czujny!Stanlinkówaktualnynaczaswakacji2005.
1 Takiwła±niejestdokumentdost¦pnypodadresem: http://republika.pl/grzes2a/c-cpp.pdf .Tammo»esznieco
si¦dowiedzie¢opodstawachC/C++.
 
Zgłoś jeśli naruszono regulamin