Wstecz:
Programowanie w C++
W górę:
Programowanie w C++
Dalej:
1. Wprowadzenie
Spis treści
1. Wprowadzenie
1.1 Kompilatory
1.1.1 Linux
1.1.2 Windows
1.2 Literatura
2. Zaczynamy
2.1 Najprostsze programy
2.2 Proste operacje We/Wy
2.2.1 Wyprowadzanie danych
2.2.2 Wprowadzanie danych
2.3 Funkcje
2.4 Argumenty wywołania
2.5 C#
3. Preprocesor
3.1 Co to jest preprocesor?
3.2 Dyrektywy preprocesora
3.3 Predefiniowane nazwy (makra) preprocesora
4. Podstawowe typy danych
4.1 Wstęp
4.2 Typy całkowite
4.3 Typy zmiennopozycyjne
4.4 Typ logiczny
4.5 Typy wyliczeniowe
4.6 Wskaźniki
4.6.1 Wskaźniki do zmiennych
4.6.2 Wskaźniki generyczne
4.7 Referencje
4.8 C#
5. Tablice statyczne i wskaźniki
5.1 Definiowanie tablic
5.2 Typ tablicowy
5.3 Arytmetyka wskaźników
5.4 Tablice znaków (C-napisy)
5.5 Tablice wielowymiarowe
5.5.1 Macierze
5.5.2 Tablice napisów
5.6 C#
6. Typy „złożone”
6.1 Definiowanie złożonych typów danych
6.2 Specyfikator typedef
7. Zmienne
7.1 Słowa kluczowe i nazwy
7.2 Zasięg i widoczność zmiennych
7.3 Klasy pamięci
7.3.1 Zmienne statyczne
7.3.2 Zmienne rejestrowe
7.3.3 Zmienne zewnętrzne
7.4 Modyfikatory typów
7.4.1 Zmienne ulotne
7.4.2 Stałe
7.5 L-wartości
7.6 C#
8. Instrukcje
8.1 Rodzaje instrukcji
8.2 Etykiety
8.3 Deklaracje
8.4 Instrukcja pusta
8.5 Instrukcja grupująca
8.6 Instrukcja wyrażeniowa
8.7 Instrukcja warunkowa
8.8 Instrukcja wyboru (switch)
8.9 Instrukcje iteracyjne (pętle)
8.9.1 Pętla while
8.9.2 Pętla do
8.9.3 Pętla for
8.9.4 Pętla foreach
8.10 Instrukcje zaniechania i kontunuacji
8.11 Instrukcje skoku
8.12 Instrukcje powrotu
8.13 Instrukcje obsługi wyjątków
8.14 C#
9. Operatory
9.1 Priorytety i wiązanie
9.2 Przegląd operatorów
9.2.1 Operatory zasięgu
9.2.2 Grupa operatorów o priorytecie 16
9.2.3 Grupa operatorów o priorytecie 15
9.2.4 Grupa operatorów o priorytecie 14
9.2.5 Operatory arytmetyczne
9.2.6 Operatory relacyjne i porównania
9.2.7 Operatory bitowe
9.2.8 Operatory logiczne
9.2.9 Operatory przypisania
9.2.10 Operator warunkowy
9.2.11 Operator zgłoszenia wyjątku
9.2.12 Operator przecinkowy
9.2.13 Alternatywne nazwy operatorów
10. Konwersje niejawne, porządek wartościowania
10.1 Konwersje standardowe
10.2 Porządek wartościowania
11. Funkcje
11.1 Wstęp
11.2 Deklaracje i definicje funkcji
11.3 Wywołanie funkcji
11.4 Argumenty domyślne
11.5 Zmienna liczba argumentów
11.6 Argumenty referencyjne
11.7 Referencje jako wartości zwracane funkcji
11.8 Funkcje rekurencyjne
11.9 Funkcje statyczne
11.10 Funkcje rozwijane
11.11 Przeciążanie funkcji
11.12 Wskaźniki funkcyjne
11.13 Funkcje lambda
11.14 Szablony funkcji
11.15 C#
12. Zarządzanie pamięcią
12.1 Wstęp
12.2 Przydzielanie pamięci — operator new
12.3 Zwalnianie pamięci — operator delete
12.4 Dynamiczne tablice wielowymiarowe
12.5 Zarządzanie pamięcią w C
12.6 Funkcje operujące na pamięci
12.7 Lokalizujący przydział pamięci
13. C-struktury i unie
13.1 C-struktury
13.2 Unie
14. Klasy (I)
14.1 Wstęp
14.2 Dostępność składowych
14.3 Pola klasy
14.4 Metody
14.5 Statyczne funkcje składowe
14.6 Konstruktory
14.7 Destruktory
14.8 Tworzenie obiektów
14.9 Tablice obiektów
14.10 Pola bitowe
14.11 C#
15. Klasy (II)
15.1 Metody stałe
15.1.1 Pola mutable
15.2 Metody ulotne
15.3 Konstruktory - dalsze szczegóły
15.3.1 Konstruktory kopiujące
15.3.2 Listy inicjalizacyjne
15.4 Funkcje zaprzyjaźnione
15.5 Klasy zagnieżdżone
15.6 Wskaźniki do składowych
16. Operacje wejścia/wyjścia
16.1 Strumienie
16.1.1 Strumienie predefiniowane
16.2 Operatory << i >>
16.3 Formatowanie
16.3.1 Flagi formatowania
16.3.2 Manipulatory
16.4 Zapis i odczyt nieformatowany
16.4.1 Odczyt nieformatowany
16.4.2 Zapis nieformatowany
16.5 Pliki
16.6 Obsługa błędów strumieni
16.7 Pliki wewnętrzne
16.7.1 Tablice znaków jako pliki wewnętrzne
16.7.2 Napisy C++ jako pliki wewnętrzne
17. Napisy
17.1 C-napisy
17.1.1 Funkcje operujące na C-napisach
17.1.2 Funkcje operujące na znakach
17.1.3 Funkcje konwertujące
17.2 Napisy w C++
17.2.1 Konstruktory
17.2.2 Metody i operatory
18. Przeciążanie operatorów
18.1 Wstęp
18.2 Przeciążenia za pomocą funkcji globalnych
18.2.1 Operatory dwuargumentowe
18.2.2 Operatory jednoargumentowe
18.3 Przeciążenia za pomocą metod klasy
18.3.1 Operatory dwuargumentowe
18.3.2 Operatory jednoargumentowe
18.4 Operatory „specjalne”
18.4.1 Operator przypisania
18.4.2 Operator indeksowania
18.4.3 Operator wywołania
18.4.4 Operator wyboru składowej przez wskaźnik
19. Jeszcze o konwersjach
19.1 Konwersje od i do typu definiowanego
19.1.1 Konwersja do typu definiowanego
19.1.2 Konwersja od typu definiowanego
19.2 Konwersje jawne
19.2.1 Konwersje uzmienniające
19.2.2 Konwersje statyczne
19.2.3 Konwersje dynamiczne
19.2.4 Konwersje wymuszane
20. Dziedziczenie i polimorfizm
20.1 Podstawy dziedziczenia
20.2 Konstruktory i destruktory klas pochodnych
20.3 Operator przypisania dla klas pochodnych
20.4 Metody wirtualne i polimorfizm
20.5 Klasy abstrakcyjne
20.6 Wirtualne destruktory
20.7 Wielodziedziczenie
21. Wzorce
21.1 Szablony klas
22. Wyjątki
22.1 Zgłaszanie wyjątków
22.2 Wychwytywanie wyjątków
22.3 Hierarchie wyjątków
22.4 Wyjątki w konstruktorach i destruktorach
22.5 Specyfikacje wyjątków
22.6 Ponawianie wyjątku
22.7 Standardowe wyjątki
23. Moduły i przestrzenie nazw
23.1 Moduły programu
23.1.1 Pliki nagłówkowe i implementacyjne
23.2 Przestrzenie nazw
24. Biblioteka standardowa
24.1 Kolekcje i iteratory
24.1.1 Wektory
24.1.2 Iteratory
24.1.3 Operacje na kolekcjach
24.2 Algorytmy i obiekty funkcyjne
24.2.1 Algorytmy
24.2.2 Obiekty funkcyjne
24.3 Przykłady
25. Dynamiczna identyfikacja typu
25.1 Operator typeid
25.2 Operator dynamic_cast
Skorowidz
Wstecz:
Programowanie w C++
W górę:
Programowanie w C++
Dalej:
1. Wprowadzenie
T.R. Werner, 21 lutego 2016; 20:17