Poznaj C++ w$ godziny0203

Poznaj C++ w$ godziny0203



194 Godzina 13

Pytania i odpowiedzi

P: Dlaczego wymyślono wartości domyślne skoro można przeciążać funkcje?

O: Łatwiej jest zrozumieć jedną funkcję niż dwie. Łatwiej jest również analizować jedną funkcję z określonymi wartościami domyślnymi niż dwie różne funkcje. Dodatkowo, częstym źródłem błędów przy modyfikacji programu, jest przypadkowe pominięcie jednej z przeciążonych funkcji.

P: No to skoro jest tyle problemów z przeciążanymi funkcjami, to dlaczego zawsze nie wykorzystywać wartości domyślnych?

O: Przeciążanie funkcji daje możliwości nieosiągalne w przypadku wartości domyślnych, takie jak np. możliwość różnicowania listy parametrów np. pod względem typu, a nie tylko pod względem wartości.

P: Co umieszczać w części inicjalizującej, a co w treści konstruktora?

O: Reguła jest prosta. Wszystko co się da umieścić w części inicjalizującej należy tam umieścić (w szczególności inicjalizację wszystkich zmiennych wewnętrznych). Niektóre operacje, takie jak obliczenia, wypisywanie tekstów itp. trzeba umieścić w treści konstruktora.

P: Czy można przeciążać funkcje posiadające parametry domyślne?

O: Tak. Nie ma powodu, dla którego nie można by łączyć tych dwóch potężnych narzędzi. Jedna lub więcej z przeciążonych funkcji może mieć określone domyślne wartości parametrów według ogólnie przyjętych dla wartości domyślnych zasad.

Pytania i odpowiedzi

P: Dlaczego wymyślono wartości domyślne skoro można przeciążać funkcje?

O: Łatwiej jest zrozumieć jedną funkcję niż dwie. Łatwiej jest również analizować jedną funkcję z określonymi wartościami domyślnymi niż dwie różne funkcje. Dodatkowo, częstym źródłem błędów przy modyfikacji programu, jest przypadkowe pominięcie jednej z przeciążonych funkcji.

P: No to skoro jest tyle problemów z przeciążanymi funkcjami, to dlaczego zawsze nie wykorzystywać wartości domyślnych?

O: Przeciążanie funkcji daje możliwości nieosiągalne w przypadku wartości domyślnych, takie jak np. możliwość różnicowania listy parametrów np. pod względem typu, a nie tylko pod względem wartości.

P: Co umieszczać w części inicjalizującej, a co w treści konstruktora?

O: Reguła jest prosta. Wszystko co się da umieścić w części inicjalizującej należy tam umieścić (w szczególności inicjalizację wszystkich zmiennych wewnętrznych). Niektóre operacje, takie jak obliczenia, wypisywanie tekstów itp. trzeba umieścić w treści konstruktora.

P: Czy można przeciążać funkcje posiadające parametry domyślne?

O: Tak. Nie ma powodu, dla którego nie można by łączyć tych dwóch potężnych narzędzi. Jedna lub więcej z przeciążonych funkcji może mieć określone domyślne wartości parametrów według ogólnie przyjętych dla wartości domyślnych zasad.


Wyszukiwarka

Podobne podstrony:
Poznaj C++ w$ godziny0153 142 Godzina 9Pytania i odpowiedzi P: Dlaczego wskaźniki są aż tak ważne? O
Poznaj C++ w$ godziny0025 Zaczynamy 9Kompilacja i łączenia kodu źródłowego Plik źródłowy można nazwa
Poznaj C++ w$ godziny0058 Instrukcje i wyrażenia 43Listing 4.2. Obliczanie wartości wyrażenia // Lis
Poznaj C++ w$ godziny0075 Funkcje 61Rysunek 5.3 typ zwracanej wartości
Poznaj C++ w$ godziny0136 124 Godzina 8Pytania i odpowiedzi P: Czym mam się kierować przy wyborze po
Poznaj C++ w$ godziny0219 210 Godzina 14Pytania i odpowiedzi P: Po co przeciążać operator skoro możn
GOTÓW DO SZKOŁY ĆWICZENIA 6 7 LAT (16) Która godzina? Połqcz odpowiednie rysunki zegarów z zapisaną
Poznaj C++ w$ godziny0001 Gdy masz czas tylko na właściwe rozwiązania... Intersoftlcind Gdy masz cza
Poznaj C++ w$ godziny0002 Jesse LibertyC++w 2 4 godziny Tłumaczenie: Grzegorz MichałekInlersofllond
Poznaj C++ w$ godziny0003 Tytuł oryginału: Teach Yourself C++ in 24 Hours, Second Edition Tłumaczeni
Poznaj C++ w$ godziny0004 Spis rozdziałów Część 1 Wstęp do C++ 1 1 Zaczynamy 3 2 Program w C++ 1
Poznaj C++ w$ godziny0005 Część VI Tematy specjalne 293 20 Specjalne klasy i
Poznaj C++ w$ godziny0006 Spis treści Część I Wstęp do C++    1 1    Z
Poznaj C++ w$ godziny0007 VI Poznaj C++ w 24 godziny Przypisywanie wartości do zmiennych
Poznaj C++ w$ godziny0008 Spis treści    vii Zmienne
Poznaj C++ w$ godziny0009 viii Poznaj C++ w 24 godziny 8    Zaawansowane sterowanie p
Poznaj C++ w$ godziny0010 Spis treści    ix 11    Referencje
Poznaj C++ w$ godziny0011 X Poznaj C++ w 24 godziny Ograniczenia przy przeciążaniu operatorów
Poznaj C++ w$ godziny0012 Spis treści    xi Przejścia niedozwolone

więcej podobnych podstron