Szukaj

 


Kategorie


Wydawnictwa


Polecamy





 

Książka Wydawnictwo SGGW

Język programowania wysokiego poziomu C++ Programowanie obiektowe

Język programowania wysokiego poziomu C++ Programowanie obiektowe

Cena: 25.00 zł
niedostępna
Autor:Jałowiecki Piotr,
ISBN:83-7244-749-7
Wydawnictwo:Wydawnictwo SGGW
Ilość stron:228
Wydanie:2006
Format:B5
Oprawa:miękka
Język programowania wysokiego poziomu C++ Programowanie obiektowe
Jedną z cech wyróżniających język C++ spośród innych języków programowania
w okresie, w którym pojawił się na rynku, była możliwość przeciążania funkcji.
Technika ta nie mogła być stosowana w językach, w których kompilator nie pozwalał
na definiowanie kilku funkcji o takiej samej nazwie, w tym samym zakresie
ważności. Oznaczało to, że w każdym miejscu programu mogły być dostępne tylko
funkcje o różnych nazwach. Sytuacja taka miała miejsce w wielu popularnych językach
programowania wysokiego poziomu, między innymi w Pascalu, Fortranie czy C,
który jest protoplastą języka C++.
Jedną z konsekwencji pojawienia się możliwości przeciążania funkcji w obiektowym
języku programowania C++ jest dosyć częste uznawanie tej techniki za
obiektową lub przynajmniej z pogranicza programowania obiektowego i nieobiektowego.
Dzieje się tak również dlatego, że istotą przeciążania jest automatyczny
wybór przez kompilator odpowiedniej wersji spośród funkcji o takiej
samej nazwie w momencie jej wywołania w zależności od typów argumentów,
z którymi funkcję wywołano. Dzięki temu użytkownik nie musi samodzielnie troszczyć
się o dopasowywanie składni wywołania funkcji do odpowiedniej jej wersji.
Niemniej traktowanie przeciążania funkcji jako techniki obiektowej jest kwestią
problematyczną i zależy od sformułowania definicji programowania obiektowego.
Nazwa samej techniki pochodzi od angielskiego słowa
przeciążanie, nadmierne obciążenie lub przeładowanie, ma także kilka innych znaczeń.
W polskiej literaturze tematu mówi się zazwyczaj o przeciążaniu lub przeładowaniu
funkcji.
overloading, oznaczającego
1. Przeciążanie funkcji 5
1.1. Wprowadzenie 5
1.2. Funkcja przeciążona 5
1.3. Elementy funkcji podlegające przeciążaniu 7
1.4. Dopasowywanie argumentów wywołania podczas
przeciążania funkcji 10
1.5. Typy danych niepodlegające przeciążaniu 16
1.6. Wskaźniki do funkcji przeciążonych 24
2. Struktury, unie i pola bitowe 28
2.1. Wprowadzenie 28
2.2. Typ strukturalny i struktura 28
2.3. Inicjalizacja struktury 33
2.4. Dostęp do składników struktury 35
2.5. Unia 38
2.6. Unia anonimowa 40
2.7. Pole bitowe 42
3. Klasy i obiekty 44
3.1. Wprowadzenie 44
3.2. Defincja klasy 44
3.3. Definicja obiektu klasy 47
3.4. Składniki klasy 47
3.5. Dane składowe klasy 50
3.6. Funkcje składowe klasy 52
3.7. Składniki statyczne klasy 56
3.8. Obiekty oraz składniki klasy typu const i volatile. Modyfikator
mutable 63
3.9. Zasłanianie nazw składników i przeciążanie funkcji
składowych klasy 66
3.10. Obiekty klasy jako argumenty i wartości funkcji 70
4. Konstruktory i destruktory 74
4.1. Wprowadzenie 74
4.2. Definicja konstruktora 74
4.3. Definicja destruktora 77
4.4. Lista inicjalizacyjna konstruktora 81
4.5. Wywołanie konstruktora i destruktora 84
4.6. Przeciążanie konstruktora 87
4.7. Konstruktor domniemany 88
4.8. Konstruktor i destruktor klas z obiektami składowymi 89
4.9. Konstruktor kopiujący 91
5. Zaprzyjaźnianie funkcji i klas 97
5.1. Wprowadzenie 97
5.2. Funkcja zaprzyjaźniona 97
5.3. Klasa zaprzyjaźniona 104
6. Tablice obiektów 111
6.1. Wprowadzenie 111
6.2. Tablica obiektów będących agregatami 111
6.3. Tablica obiektów niebędących agregatami 118
6.4. Dynamiczna tablica obiektów definiowana
operatorami new i delete 122
7. Wskaźniki do obiektów oraz składników klas 127
7.1. Wprowadzenie 127
7.2. Wskaźnik do danych określonego typu 127
7.3. Wskaźnik do obiektów 130
7.4. Wskaźnik do składników klasy 134
7.5. Tablica wskaźników do składników klasy 139
8. Konwersje typów danych 146
8.1. Wprowadzenie 146
8.2. Konwersje nieobiektowe 146
8.3. Konstruktor konwertujący 150
8.4. Funkcja konwertująca 158
8.5. Konwersje obiektowe niejawne i jawne 164
9. Przeciążanie operatorów 168
9.1. Wprowadzenie 168
9.2. Operator przeciążony 168
9.3. Funkcja operatorowa jako funkcja globalna 171
9.4. Funkcja operatorowa jako funkcja składowa klasy 175
10. Dziedziczenie składników klas 181
10.1. Wprowadzenie 181
10.2. Klasa podstawowa i pochodna 182
10.3. Dziedziczenie wielopokoleniowe 190
10.4. Dziedziczenie wieloklasowe 197
10.5. Konwersje standardowe klas podczas dziedziczenia 204
10.6. Klasa wirtualna 206
11. Polimorfizm i funkcje wirtualne 210
11.1. Wprowadzenie 210
11.2. Funkcja wirtualna 210
11.3. Klasa abstrakcyjna 219
12. Programowanie zorientowane obiektowo 222




Opinie książki Język programowania wysokiego poziomu C++ Programowanie obiektowe

Brak opinii.

Aby dodać swoją opinię, musisz się zalogować.

Koszyk

jest pusty

Logowanie


Darmowa Wysyłka

Brakuje 1000.00 zł do darmowej wysyłki poprzez:

- kurierska usługa DPD (przelew na konto),

Newsletter

Jeżeli chcesz otrzymywać od nas informacje o nowościach, podaj swój adres e-mail.


Podaj swj e-mail:
W każdej chwili można się wypisać z listy newslettera. Nikomu nie udostępniamy adresów e-mail z naszej bazy.

Polecamy




 

A B C D E F G H I J K L M N O P Q R S T U W X Y Z
Strona główna  |   Twoje konto  |   Oferta  |   Nowości  |   Partnerzy  |   Koszyk  |   Mapa witryny  |   O Księgarni  |   Polityka prywatności  |   Kontakt
Copyright © Księgarnia Warszawa WAWA

Powiadomienie o plikach cookies
[x] Nie pokazuj więcej
Uprzejmie informujemy, iż niniejsza witryna korzysta z plików cookies. Pozostając na niej wyrażasz zgodę na korzystanie z plików cookies. Dowiedz się więcej, czytając Politykę prywatności.