Język C++. Szkoła programowania. Wydanie VI - Stephen Prata
Botland
RSS
94.90
77.15 + VAT
- Kod:
- 5028
- GTIN-13:
- 9788328391529
- Dodany do bazy:
- Ostatnio widziany:
- Zmiana ceny:
- +5% (28.09.2025)
- Poprzednia cena:
- 90.16
Sugerowane produkty dla progowania
Uwaga! Sprzedaż produktu została zakończona. Sprawdź inne w tej kategorii.Opis produktu: Język C++. Szkoła programowania. Wydanie VI - Stephen Prata
Książka jest przewodnikiem programowania w języku C++. Autor w klarowny i wnikliwy sposób omawia podstawowe pojęcia i techniki programowania. Poprzez przedstawianie kolejnych zagadnień, począwszy od kodu strukturalnego, poprzez klasy i dziedziczenie, po inteligentne wskaźniki, zagłębia się w tajniki skutecznego programowania w języku C++. Rozdziały zakończone są pytaniami sprawdzającymi wraz z odpowiedziami oraz ćwiczeniami programistycznymi, dotyczącymi omawianego zagadnienia. To wydanie zostało rozszerzone o przybliżenie nowych elementów wprowadzonych w standardzie C++11. Dzięki informacjom zawartym w książce:
* poznasz nowe elementy języka, wprowadzone w standardzie C++ 11
* zaliczysz kurs programowania w języku C++
* błyskawicznie znajdziesz informacje potrzebne w codziennej pracy
* opanujesz język C++
Język C++. Szkoła programowania. Wydanie VI - Stephen Prata.Przykładowe projekty wykorzystane w książce dostępne do pobrania. Fragment książki do przeczytania on-line.
Spis treści Podziękowania (19) Wstęp (21) Rozdział 1. Zaczynamy (31)
* Nauka C++ - co nas czeka? (31)
* Pochodzenie języka C++ - krótka historia (32)
* Język C (32)
* Filozofia programowania w C (33)
* Zmiana w C++ - programowanie obiektowe (34)
* C++ i programowanie uogólnione (35)
* Pochodzenie C++ (36)
* Przenośność i standardy (37)
* Rozwój języka w liczbach (38)
* Standardy C++ w niniejszej książce (39)
* Mechanika tworzenia programu (39)
* Pisanie kodu źródłowego (40)
* Kompilacja i konsolidacja (41)
* Podsumowanie (45)
Rozdział 2. Pierwszy program w C++ (47)
* C++ - początek (47)
* Cechy funkcji main() (49)
* Komentarze w C++ (51)
* Preprocesor i plik iostream (52)
* Nazwy plików nagłówkowych (53)
* Przestrzenie nazw (53)
* Wypisywanie danych - cout (55)
* Formatowanie kodu źródłowego C++ (57)
* Instrukcje C++ (59)
* Instrukcje deklaracji i zmienne (60)
* Instrukcja przypisania (61)
* Nowa sztuczka z cout (62)
* Inne instrukcje C++ (62)
* Użycie obiektu cin (63)
* Złączanie za pomocą cout (64)
* cin i cout - klasy po raz pierwszy (64)
* Funkcje (66)
* Użycie funkcji zwracającej wartość (66)
* Odmiany funkcji (69)
* Funkcje definiowane przez użytkownika (70)
* Funkcje użytkownika zwracające wartość (73)
* Dyrektywa using w programach z wieloma funkcjami (74)
* Podsumowanie (76)
* Pytania sprawdzające (77)
* Ćwiczenia programistyczne (77)
Rozdział 3. Dane (79)
* Zmienne proste (80)
* Nazwy zmiennych (80)
* Typy całkowitoliczbowe (81)
* Typy short, int, long i long long (82)
* Typy bez znaku (87)
* Dobór właściwego typu (89)
* Literały całkowitoliczbowe (90)
* Jak C++ ustala typ stałej? (91)
* Typ char - znaki i małe liczby całkowite (92)
* Typ danych bool (100)
* Kwalifikator const (100)
* Liczby zmiennoprzecinkowe (101)
* Zapis liczb zmiennoprzecinkowych (102)
* Zmiennoprzecinkowe typy danych (103)
* Stałe zmiennoprzecinkowe (105)
* Zalety i wady liczb zmiennoprzecinkowych (105)
* Operatory arytmetyczne C++ (106)
* Kolejność działań - priorytety operatorów i łączność (107)
* Odmiany dzielenia (108)
* Operator modulo (110)
* Konwersje typów (110)
* Automatyczne deklaracje typów w C++11 (116)
* Podsumowanie (117)
* Pytania sprawdzające (117)
* Ćwiczenia programistyczne (118)
Rozdział 4. Typy złożone (121)
* Tablice w skrócie (122)
* Uwagi o programie (124)
* Inicjalizacja tablic (124)
* Inicjalizacja tablic w C++11 (125)
* Łańcuchy (126)
* Łączenie literałów napisowych (127)
* Łańcuchy w tablicy (128)
* Problemy z wprowadzaniem łańcuchów znakowych (129)
* Wczytywanie łańcuchów znakowych wierszami (130)
* Mieszanie w danych wejściowych łańcuchów i liczb (134)
* Klasa string - wprowadzenie (135)
* Inicjalizacja łańcuchów znakowych w C++11 (136)
* Przypisanie, konkatenacja i dołączanie (136)
* Inne operacje klasy string (138)
* Klasa string a wejście i wyjście (139)
* Inne odmiany literałów napisowych (141)
* Struktury (142)
* Użycie struktury w programie (143)
* Inicjalizacja struktur w C++11 (145)
* Czy w strukturze można użyć pola typu string? (146)
* Inne cechy struktur (146)
* Tablice struktur (148)
* Pola bitowe (149)
* Unie (149)
* Typy wyliczeniowe (151)
* Ustawianie wartości enumeratorów (153)
* Zakresy wartości w typach wyliczeniowych (153)
* Wskaźniki i różne drobiazgi (154)
* Deklarowanie i inicjalizacja wskaźników (156)
* Niebezpieczeństwa związane ze wskaźnikami (158)
* Wskaźniki i liczby (159)
* Użycie operatora new do alokowania pamięci (159)
* Zwalnianie pamięci za pomocą delete (161)
* Użycie new do tworzenia tablic dynamicznych (162)
* Wskaźniki, tablice i arytmetyka wskaźników (165)
* Podsumowanie informacji o wskaźnikach (168)
* Wskaźniki i łańcuchy (170)
* Użycie new do tworzenia struktur dynamicznych (174)
* Alokacja pamięci: automatyczna, statyczna i dynamiczna (177)
* Kombinacje typów (179)
* Tablice inaczej (181)
* Klasa szablonowa vector (181)
* Klasa szablonowa array (C++11) (182)
* Porównanie tablic z obiektami vector i array (183)
* Podsumowanie (184)
* Pytania sprawdzające (185)
* Ćwiczenia programistyczne (186)
Rozdział 5. Pętle i wyrażenia relacyjne (189)
* Pętle for (190)
* Elementy pętli for (191)
* Wracamy do pętli for (196)
* Zmiana wielkości kroku (198)
* Pętla for i łańcuchy znakowe (198)
* Operatory inkrementacji (++) i dekrementacji (--) (199)
* Efekty uboczne i punkty odniesienia (200)
* Formy przedrostkowe a formy przyrostkowe (201)
* Operatory inkrementacji i dekrementacji a wskaźniki (202)
* Złożone operatory przypisania (203)
* Instrukcje złożone, czyli bloki (203)
* Przecinek jako operator (i pewne sztuczki składniowe) (205)
* Wyrażenia relacyjne (208)
* Przypisania, porównania i pomyłki (208)
* Porównywanie łańcuchów w stylu C (210)
* Porównywanie obiektów klasy string (213)
* Pętla while (213)
* Uwagi o programie (215)
* Pętla for a pętla while (216)
* Chwileczkę - tworzymy pętlę opóźnienia (217)
* Pętla do while (219)
* Zakresowe pętle for (C++11) (221)
* Pętle i wprowadzanie danych tekstowych (221)
* Najprostsza wersja cin (222)
* cin.get(char) na odsiecz (223)
* Która wersja cin.get() jest lepsza? (224)
* Koniec pliku (224)
* Jeszcze inna wersja cin.get() (227)
* Pętle zagnieżdżone i dwuwymiarowe tablice (230)
* Inicjalizacja tablic dwuwymiarowych (232)
* Stosowanie tablic dwuwymiarowych (232)
* Podsumowanie (234)
* Pytania sprawdzające (234)
* Ćwiczenia programistyczne (235)
Rozdział 6. Instrukcje warunkowe i operatory logiczne (237)
* Instrukcja if (237)
* Instrukcja if else (239)
* Formatowanie instrukcji if else (241)
* Konstrukcja if else if else (241)
* Wyrażenia logiczne (243)
* Logiczny operator alternatywy - || (243)
* Logiczny operator koniunkcji - && (245)
* Ustalanie zakresu za pomocą operatora && (247)
* Operator negacji logicznej - ! (248)
* O operatorach logicznych (250)
* Zapis alternatywny (251)
* Biblioteka cctype (251)
* Operator ?: (253)
* Instrukcja switch (255)
* Użycie enumeratorów jako etykiet (258)
* switch versus if else (259)
* Instrukcje break i continue (259)
* Uwagi o programie (261)
* Pętle wczytywania liczb (262)
* Uwagi o programie (264)
* Proste wejście-wyjście z pliku (265)
* Tekstowe wejście-wyjście i pliki tekstowe (265)
* Zapis do pliku tekstowego (267)
* Odczyt danych z pliku tekstowego (270)
* Podsumowanie (274)
* Pytania sprawdzające (275)
* Ćwiczenia programistyczne (276)
Rozdział 7. Funkcje - składniki programów w C++ (279)
* Funkcje w skrócie (280)
* Definiowanie funkcji (281)
* Prototypowanie i wywoływanie funkcji (283)
* Parametry funkcji i przekazywanie przez wartość (286)
* Wiele parametrów (287)
* Jeszcze jedna funkcja dwuargumentowa (289)
* Funkcje i tablice (291)
* Jak wskaźniki umożliwiają tworzenie funkcji przetwarzających tablice? (292)
* Skutki użycia tablic jako parametrów (293)
* Dodatkowe przykłady funkcji i tablic (295)
* Funkcje korzystające z zakresów tablic (301)
* Wskaźniki i modyfikator const (302)
* Funkcje i tablice dwuwymiarowe (306)
* Funkcje i łańcuchy w stylu C (307)
* Funkcje z łańcuchami w stylu C jako parametrami (307)
* Funkcje zwracające łańcuchy w formacie C (309)
* Funkcje i struktury (310)
* Przekazywanie i zwracanie struktur (311)
* Inny przykład użycia funkcji i struktur (312)
* Przekazywanie adresu struktury (317)
* Funkcje i obiekty klasy string (318)
* Funkcje i obiekty typu array (320)
* Uwagi o programie (321)
* Rekurencja (322)
* Rekurencja w pojedynczym wywołaniu (322)
* Rekurencja w wielu wywołaniach (324)
* Wskaźniki na funkcje (325)
* Wskaźniki na funkcje - podstawy (325)
* Przykład użycia wskaźników na funkcje (327)
* Wariacje na temat wskaźników funkcji (329)
* Uproszczenie poprzez typedef (333)
* Podsumowanie (333)
* Pytania sprawdzające (334)
* Ćwiczenia programistyczne (336)
Rozdział 8. Funkcje - zagadnienia zaawansowane (339)
* Funkcje inline (339)
* Zmienne referencyjne (342)
* Tworzenie zmiennej referencyjnej (342)
* Referencje jako parametry funkcji (345)
* Właściwości referencji (348)
* Użycie referencji do struktur (352)
* Użycie referencji z obiektami (358)
* Obiekty po raz wtóry - obiekty, dziedziczenie i referencje (361)
* Kiedy korzystać z referencji jako parametrów? (364)
* Parametry domyślne (365)
* Uwagi o programie (366)
* Przeciążanie funkcji (367)
* Przykład przeciążania funkcji (370)
* Kiedy korzystać z przeciążania funkcji? (372)
* Szablony funkcji (372)
* Przeciążone szablony (375)
* Ograniczenia szablonów (377)
* Specjalizacje jawne (377)
* Konkretyzacje i specjalizacje (380)
* Którą wersję funkcji wybierze kompilator? (382)
* Ewolucja szablonów funkcji (388)
* Podsumowanie (392)
* Pytania sprawdzające (392)
* Ćwiczenia programistyczne (393)
Rozdział 9. Model pamięci i przestrzenie nazw (397)
* Kompilacja rozłączna (397)
* Czas życia, zasięg i łączenie (403)
* Zasięg i łączenie (404)
* Przydział automatyczny (404)
* Zmienne statyczne (409)
* Przydział statyczny, łączenie zewnętrzne (411)
* Specyfikatory i kwalifikatory (419)
* Łączenie a funkcje (421)
* Łączenie językowe (422)
* Kategorie przydziału a przydział dynamiczny (423)
* Przestrzenie nazw (429)
* Tradycyjne przestrzenie nazw języka C++ (429)
* Nowe mechanizmy przestrzeni nazw (431)
* Przestrzenie nazw - przykład (438)
* Przyszłość przestrzeni nazw (441)
* Podsumowanie (442)
* Pytania sprawdzające (442)
* Ćwiczenia programistyczne (445)
Rozdział 10. Obiekty i klasy (447)
* Programowanie proceduralne a programowanie obiektowe (448)
* Klasy a abstrakcje (449)
* Czym jest typ? (449)
* Klasy w języku C++ (450)
* Implementowanie metod klas (455)
* Stosowanie klas (459)
* Zmiany implementacji (461)
* Podsumowanie poznanych wiadomości (462)
* Konstruktory i destruktory (463)
* Deklarowanie i definiowanie konstruktorów (464)
* Stosowanie konstruktorów (465)
* Konstruktory domyślne (466)
* Destruktory (467)
* Ulepszenia klasy Stock (468)
* Konstruktory i destruktory - podsumowanie (475)
* Tożsamość obiektu - wskaźnik this (476)
* Tablice obiektów (482)
* Zasięg klasy (485)
* Stałe zasięgu klasy (486)
* Wyliczenia z własnym zasięgiem (C++11) (487)
* Abstrakcyjne typy danych (488)
* Podsumowanie (492)
* Pytania sprawdzające (493)
* Ćwiczenia programistyczne (493)
Rozdział 11. Stosowanie klas (497)
* Przeciążanie operatorów (498)
* Raz, dwa, trzy - próba przeciążenia operatora (499)
* Dodatkowy operator dodawania (502)
* Ograniczenia przeciążania operatorów (505)
* Jeszcze o przeciążaniu operatorów (506)
* Przyjaciele najważniejsi (509)
* Deklarowanie przyjaźni (510)
* Typowa przyjaźń - przeciążanie operatora << (512)
* Przeciążanie operatorów - metody kontra funkcje nieskładowe (518)
* Przeciążania ciąg dalszy - klasa Vector (519)
* Składowa kodująca stan obiektu (526)
* Przeciążanie operatorów arytmetycznych dla klasy Vector (528)
* Nota implementacyjna (530)
* Wektorowe błądzenie losowe (530)
* Automatyczne konwersje i rzutowanie typów klas (534)
* O programie (539)
* Funkcje konwersji (539)
* Konwersja a zaprzyjaźnienie (544)
* Podsumowanie (547)
* Pytania sprawdzające (549)
* Ćwiczenia programistyczne (549)
Rozdział 12. Klasy a dynamiczny przydział pamięci (553)
* Klasy a pamięć dynamiczna (554)
* Powtórka z pamięci dynamicznej i statyczne składowe klas (554)
* Specjalne metody klasy (562)
* W czym tkwi problem z konstruktorem kopiującym w Stringbad? (565)
* Kolejne słabości Stringbad: operatory przypisania (568)
* Nowa, ulepszona klasa - String (571)
* Nowa wersja konstruktora domyślnego (572)
* Porównywanie ciągów (573)
* Indeksowanie ciągu (574)
* Statyczne metody klasy (575)
* Dalsze przeciążanie operatora przypisania (576)
* O czym należy pamiętać, stosując new w konstruktorach? (581)
* Zalecenia i przestrogi (582)
* Kopiowanie obiektów składowa po składowej (583)
* Słów parę o zwracaniu obiektów (584)
* Zwracanie niemodyfikowalnej (const) referencji obiektu (584)
* Zwracanie modyfikowalnej (bez const) referencji do obiektu (585)
* Zwracanie obiektu przez wartość (585)
* Zwracanie przez wartość obiektu niemodyfikowalnego (const) (586)
* Wskaźniki obiektów (587)
* Jeszcze o new i delete (589)
* Wskaźniki obiektów - podsumowanie (590)
* Jeszcze o miejscowej wersji new (592)
* Powtórka z poznanych technik (596)
* Przeciążanie operatora << (596)
* Funkcje konwersji (597)
* Klasy wykorzystujące new w konstruktorach (597)
* Symulacja kolejki (598)
* Klasa kolejki (598)
* Klasa klienta (609)
* Symulacja bankomatu (612)
* Podsumowanie (616)
* Pytania sprawdzające (617)
* Ćwiczenia programistyczne (619)
Rozdział 13. Klasy i dziedziczenie (623)
* Prosta klasa bazowa (624)
* Dziedziczenie (626)
* Konstruktory - zagadnienia związane z poziomem dostępu (628)
* Korzystanie z klasy pochodnej (631)
* Relacje między klasą pochodną a bazową (633)
* Dziedziczenie - relacja jest-czymś (635)
* Polimorficzne dziedziczenie publiczne (636)
* Tworzenie klas Brass oraz BrassPlus (637)
* Wiązanie statyczne i dynamiczne (648)
* Zgodność typów wskaźnikowych i referencyjnych (648)
* Metody wirtualne i wiązanie dynamiczne (650)
* Co trzeba wiedzieć o metodach wirtualnych? (653)
* Kontrola dostępu - poziom chroniony (656)
* Abstrakcyjne klasy bazowe (657)
* Stosowanie abstrakcyjnych klas bazowych (659)
* Filozofia abstrakcyjnych klas bazowych (665)
* Dziedziczenie i dynamiczny przydział pamięci (665)
* Przypadek pierwszy - klasa pochodna bez dynamicznego przydziału pamięci (665)
* Przypadek drugi - klasa pochodna z dynamicznym przydziałem pamięci (666)
* Przykład dziedziczenia z wykorzystaniem dynamicznego przydziału pamięci oraz funkcji zaprzyjaźnionych (668)
* Projektowanie klas - przegląd zagadnień (673)
* Metody automatycznie generowane przez kompilator (673)
* Inne metody (675)
* Dziedziczenie publiczne (678)
* Metody klasy - podsumowanie (682)
* Podsumowanie (683)
* Pytania sprawdzające (683)
* Ćwiczenia programistyczne (684)
Rozdział 14. Wielokrotne użycie kodu w C++ (687)
* Klasy ze składowymi w postaci obiektów (688)
* Krótka charakterystyka klasy valarray (688)
* Projekt klasy Student (689)
* Przykładowa klasa Student (691)
* Dziedziczenie prywatne (697)
* Nowa wersja klasy Student (697)
* Dziedziczenie wielokrotne (706)
* Podwójne egzemplarze klasy Worker (711)
* Podwójne metody (714)
* Przegląd zagadnień związanych z dziedziczeniem wielokrotnym (723)
* Szablony klas (724)
* Definiowanie szablonu klasy (724)
* Korzystanie z szablonu klasy (727)
* Analiza szablonu klasy (729)
* Szablon tablicy i argumenty pozatypowe szablonu (734)
* Elastyczność szablonów (736)
* Specjalizacja szablonu (739)
* Szablony jako składowe (742)
* Szablony jako parametry (744)
* Szablony klas i zaprzyjaźnienie (746)
* Szablonowe aliasy typów (C++11) (752)
* Podsumowanie (753)
* Pytania sprawdzające (755)
* Ćwiczenia programistyczne (757)
Rozdział 15. Zaprzyjaźnienie, wyjątki i nie tylko (763)
* Zaprzyjaźnienie (763)
* Klasy zaprzyjaźnione (764)
* Zaprzyjaźnione metody klas (768)
* Inne relacje przyjaźni (771)
* Klasy zagnieżdżone (773)
* Dostęp do klas zagnieżdżonych (774)
* Zagnieżdżanie w szablonie (776)
* Wyjątki (779)
* Wywoływanie funkcji abort() (779)
* Zwracanie kodu błędu (780)
* Mechanizm wyjątków (782)
* Wyjątki w postaci obiektów (784)
* Specyfikacje wyjątków a C++11 (788)
* Rozwijanie stosu (789)
* Inne właściwości wyjątków (793)
* Klasa exception (796)
* Wyjątki, klasy i dziedziczenie (799)
* Problemy z wyjątkami (804)
* Ostrożnie z wyjątkami (807)
* RTTI (808)
* Po co nam RTTI? (808)
* Jak działa RTTI? (809)
* Operatory rzutowania typu (816)
* Podsumowanie (820)
* Pytania sprawdzające (820)
* Ćwiczenia programistyczne (822)
Rozdział 16. Klasa string oraz biblioteka STL (823)
* Klasa string (823)
* Tworzenie obiektu string (824)
* Wprowadzanie danych do obiektów string (828)
* Używanie obiektów string (830)
* Co jeszcze oferuje klasa string? (835)
* Warianty klasy string (837)
* Szablony klas inteligentnych wskaźników (837)
* Stosowanie inteligentnych wskaźników (838)
* Więcej o inteligentnych wskaźnikach (841)
* Wyższość uniqueptr nad autoptr (844)
* Wybór inteligentnego wskaźnika (845)
* Biblioteka STL (847)
* Szablon klasy vector (847)
* Metody klasy vector (849)
* Inne możliwości klasy vector (853)
* Zakresowe pętle for (C++11) (857)
* Programowanie uogólnione (858)
* Do czego potrzebne są iteratory? (858)
* Rodzaje iteratorów (862)
* Hierarchia iteratorów (865)
* Pojęcia, uściślenia i modele (866)
* Rodzaje kontenerów (872)
* Kontenery asocjacyjne (881)
* Nieuporządkowane kontenery asocjacyjne (C++11) (887)
* Obiekty funkcyjne (funktory) (887)
* Pojęcia związane z funktorami (888)
* Funktory predefiniowane (891)
* Funktory adaptowalne i adaptatory funkcji (892)
* Algorytmy (895)
* Grupy algorytmów (895)
* Ogólne właściwości algorytmów (896)
* Biblioteka STL i klasa string (897)
* Funkcje a metody kontenerów (898)
* Używanie biblioteki STL (899)
* Inne biblioteki (903)
* Klasy vector, valarray i array (903)
* Szablon initializerlist (C++11) (908)
* Stosowanie szablonu initializerlist (910)
* Uwagi do programu (911)
* Podsumowanie (911)
* Pytania sprawdzające (913)
* Ćwiczenia programistyczne (914)
Rozdział 17. Obsługa wejścia, wyjścia oraz plików (917)
* Ogólna charakterystyka obsługi wejścia-wyjścia w języku C++ (918)
* Strumienie i bufory (919)
* Strumienie i bufory a plik iostream (921)
* Przekierowanie (923)
* Realizacja operacji wyjścia z wykorzystaniem obiektu cout (924)
* Przeciążony operator << (924)
* Inne metody klasy ostream (927)
* Opróżnianie bufora wyjściowego (930)
* Formatowanie danych wyjściowych za pomocą obiektu cout (931)
* Realizacja operacji wejścia z wykorzystaniem obiektu cin (945)
* Jak operator >> obiektu cin "widzi" dane wejściowe? (947)
* Stany strumienia (949)
* Inne metody klasy istream (953)
* Pozostałe metody klasy istream (960)
* Wejście-wyjście plikowe (964)
* Proste operacje wejścia-wyjścia plikowego (965)
* Kontrola strumienia i metoda isopen() (968)
* Otwieranie wielu plików (969)
* Przetwarzanie argumentów wiersza polecenia (969)
* Tryby otwarcia pliku (971)
* Dostęp swobodny (981)
* Formatowanie wewnętrzne (988)
* Podsumowanie (991)
* Pytania sprawdzające (992)
* Ćwiczenia programistyczne (993)
Rozdział 18. Nowy standard C++ (997)
* Podsumowanie omawianych elementów C++11 (997)
* Nowe typy (997)
* Jednolita inicjalizacja (998)
* Deklaracje (999)
* nullptr (1001)
* Inteligentne wskaźniki (1002)
* Zmiany w specyfikacji wyjątków (1002)
* Jawny zasięg elementów wyliczeń (1002)
* Zmiany w klasach (1003)
* Zmiany w szablonach i bibliotece STL (1004)
* Referencje r-wartościowe (1006)
* Semantyka przeniesienia i referencje r-wartościowe (1007)
* Potrzeba semantyki przeniesienia (1007)
* Przykład przenoszenia (1008)
* Konstruktor przenoszący - wnioski (1013)
* Przypisania (1014)
* Wymuszanie przeniesienia (1015)
* Nowe elementy klas (1018)
* Specjalne metody klas (1018)
* Metody domyślne i usunięte (1019)
* Delegowanie konstruktorów (1021)
* Dziedziczenie konstruktorów (1021)
* Zarządzanie metodami wirtualnymi: ovverride i final (1023)
* Funkcje lambda (1024)
* Wskaźniki do funkcji, funktory i lambdy (1024)
* Po co nam lambdy? (1027)
* Adaptery (1030)
* Adapter function a nieefektywność szablonów (1030)
* Naprawa problemu (1032)
* Dalsze możliwości (1034)
* Szablony o zmiennej liczbie parametrów (1035)
* Pakiety parametrów szablonu i funkcji (1035)
* Rozpakowywanie pakietów (1036)
* Rekurencja w szablonach o zmiennej liczbie parametrów (1037)
* Pozostałe udogodnienia C++11 (1040)
* Programowanie współbieżne (1040)
* Uzupełnienia biblioteki (1040)
* Programowanie niskopoziomowe (1041)
* Inne (1042)
* Zmiany języka (1042)
* Projekt Boost (1043)
* TR1 (1043)
* Korzystanie z bibliotek Boost (1043)
* Co dalej? (1044)
* Podsumowanie (1045)
* Pytania sprawdzające (1046)
* Ćwiczenia programistyczne (1049)
Dodatek A Systemy liczbowe (1051)
* Liczby dziesiętne (o podstawie 10) (1051)
* Liczby całkowite ósemkowe (o podstawie 8) (1051)
* Liczby szesnastkowe (1052)
* Liczby dwójkowe (o podstawie 2) (1052)
* Zapis dwójkowy a szesnastkowy (1053)
Dodatek B Słowa zastrzeżone języka C++ (1055)
* Słowa kluczowe języka C++ (1055)
* Leksemy alternatywne (1056)
* Nazwy zastrzeżone bibliotek języka C++ (1056)
* Identyfikatory o specjalnym znaczeniu (1057)
Dodatek C Zestaw znaków ASCII (1059) Dodatek D Priorytety operatorów (1063) Dodatek E Inne operatory (1067)
* Operatory bitowe (1067)
* Operatory przesunięcia (1067)
* Bitowe operatory logiczne (1069)
* Alternatywne reprezentacje operatorów bitowych (1071)
* Kilka typowych technik wykorzystujących operatory bitowe (1072)
* Operatory wyłuskania składowych (1073)
* alignof (C++11) (1077)
* noexcept (C++11) (1078)
Dodatek F Klasa szablonowa string (1079)
* Trzynaście typów i stała (1080)
* Informacje o danych, konstruktory i różne drobiazgi (1080)
* Konstruktor domyślny (1083)
* Konstruktory operujące na klasycznych łańcuchach C (1083)
* Konstruktory operujące na fragmentach łańcuchów C (1084)
* Konstruktory operujące na referencji l-wartościowej (1084)
* Konstruktory operujące na referencji r-wartościowej (C++11) (1085)
* Konstruktory wykorzystujące n kopii znaku (1086)
* Konstruktory wykorzystujące zakres (1086)
* Konstruktor operujący na liście inicjalizującej (C++11) (1086)
* Metody zarządzające pamięcią (1087)
* Dostęp do łańcucha (1087)
* Proste przypisanie (1088)
* Przeszukiwanie łańcuchów (1089)
* Rodzina funkcji find() (1089)
* Rodzina funkcji rfind() (1089)
* Rodzina funkcji findfirstof() (1090)
* Rodzina funkcji findlastof() (1090)
* Rodzina funkcji findfirstnotof() (1091)
* Rodzina funkcji findlastnotof() (1091)
* Metody i funkcje porównania (1091)
* Modyfikatory łańcuchów (1093)
* Metody dołączania i dodawania (1093)
* Inne metody przypisania (1094)
* Metody wstawiania (1094)
* Metody usuwania (1095)
* Metody zastępowania (1095)
* Pozostałe metody modyfikujące: copy() oraz swap() (1096)
* Wejście i wyjście (1096)
Dodatek G Metody i funkcje z biblioteki STL (1099)
* STL a C++11 (1099)
* Nowe kontenery (1099)
* Zmiany w kontenerach C++98 (1100)
* Składowe wspólne dla wszystkich (lub większości) kontenerów (1101)
* Dodatkowe składowe dla kontenerów sekwencyjnych (1104)
* Dodatkowe operacje zbiorów i map (1107)
* Kontenery asocjacyjne nieporządkujące (C++11) (1109)
* Funkcje STL (1111)
* Niemodyfikujące operacje sekwencyjne (1111)
* Mutujące operacje sekwencyjne (1116)
* Operacje sortowania i pokrewne (1125)
* Operacje liczbowe (1139)
Dodatek H Wybrane pozycje książkowe i zasoby internetowe (1141)
* Wybrane pozycje książkowe (1141)
* Zasoby internetowe (1142)
Dodatek I Dostosowywanie do standardu ANSI/ISO C++ (1145)
* Unikanie nadużywania niektórych dyrektyw preprocesora (1145)
* Do definiowania stałych lepiej używać modyfikatora const niż dyrektywy #define (1145)
* Do definiowania niewielkich funkcji lepiej używać specyfikatora inline niż makrodefinicji #define (1147)
* Używanie prototypów funkcji (1148)
* Stosowanie rzutowania typów (1148)
* Poznawanie i wykorzystywanie mechanizmów języka C++ (1149)
* Używanie nowej organizacji plików nagłówkowych (1149)
* Korzystanie z przestrzeni nazw (1149)
* Używanie inteligentnych wskaźników (1150)
* Używanie klasy string (1151)
* Korzystanie z biblioteki STL (1151)
Dodatek J Odpowiedzi do pytań sprawdzających (1153) Skorowidz (1179)
O autorze
Autorem książki “Język C++. Szkoła programowania” jest Stephen Prata - nauczyciel akademicki w stopniu profesora w dziedzinie fizyki i astronomii na College Of Marcin w Kentfield w Kaliforni. Zanim prof. Prata zajął się czystym programowaniem, używał wcześniej komputerów jako narzędzi do cyfrowego modelowania gromad gwiazd. Zakres działalności dydaktycznej Stephena Praty obejmuje przede wszystkim matematykę dyskretną i programowanie, na temat którego wydał kilkanaście publikacji, w tym również “Język C++. Szkoła Programowania”.C++ - wszechstronny język programowania dla każdego
Język C++ pojawił się w użyciu w połowie lat 80. XX wieku i jest on językiem wysokopoziomowym, który stanowi rozwinięcie legendarnego już języka C, zaliczanego do języków niskopoziomowych. Na przestrzeni minionych lat, język C++ doczekał się wielu modyfikacji i unowocześnień składni pozwalających na większe wykorzystanie swojego potencjału. VI wydanie książki “Język C++. Szkoła programowania” jest przeznaczone dla wszystkich osób, które chcą poznać wszelkie tajniki dotyczące programowania w języku C++ na każdym poziomie umiejętności.
Elecena nie prowadzi sprzedaży elementów elektronicznych, ani w niej nie pośredniczy.
Produkt pochodzi z oferty sklepu Botland