Zaawansowane funkcje 187
54: cout « "\n";
57:
58: // Główny program demonstrujący wykorzystanie funkcji
59: int main()
60: {
61: // inicjalizuj prostokąt 30x5
62: Prostokąt Prost(30,5);
63: cout « "RysujKsztalt(0,0,true)...\n";
64: Prost.RysujKsztalt(0,0,true);
65: cout «"RysujKsztalt(40,2) . . .\n";
66: Prost.RysujKsztalt(40,2) ;
67: return 0;
68: }
RysujKsztalt(0, 0, true)... ****************************** ****************************** ****************************** ****************************** ****************************** ******************************
RysujKsztalt(40, 2)... **************************************** ****************************************
ANALIZA
Listing 13.2. zastępuje przeciążoną funkcję RysujKsztalt () pojedynczą funkcją z określonymi, domyślnymi wartościami parametrów. Funkcja jest zadeklarowana w liniach 12 i 13. Pobiera ona trzy parametry. Pierwsze dwa, wysokosc i szerokość, są typu int, UzyjWartAktualnych jest zmienną logiczną (true albo false) o domyślnej wartości false. Implementacja funkcji Rysu jKsztalt () rozpoczyna się w bnii 27. Badana jest wartość trzeciego parametru - UzyjWartAktualnych. Jeśli jest on prawdziwy, to zmiennym lokalnym jegoSzerokosc i jegoWysokosc nadawane są wartości zmiennych wewnętrznych rysowanaSzerokosc i rysowanaWysokosc.
Jeśli zmienna UzyjWartAktualnych jest równa false (niezależnie od źródła wartości), to zmiennym rysowanaSzerokosc i rysowanaWysokosc nadawane są wartości dwóch pierwszych parametrów.
54: cout « "\n";
57:
58: // Główny program demonstrujący wykorzystanie funkcji
59: int main()
60: {
61: // inicjalizuj prostokąt 30x5
62: Prostokąt Prost(30,5);
63: cout « "RysujKsztalt(0,0,true)...\n";
64: Prost.RysujKsztalt(0,0,true);
65: cout «"RysujKsztalt(40,2) . . ,\n";
66: Prost.RysujKsztalt(40,2);
67: return 0;
68: }
RysujKsztalt(0, 0, true)... ****************************** ****************************** **★■***★***★****★***★******■***★ ***********************★**-**** ****************************** ******************************
RysujKsztalt(40, 2)... **************************************** ****************************************
ANALIZA:
ANALIZA
Listing 13.2. zastępuje przeciążoną funkcję RysujKsztalt () pojedynczą funkcją z określonymi, domyślnymi wartościami parametrów. Funkcja jest zadeklarowana w liniach 12 i 13. Pobiera ona trzy parametry. Pierwsze dwa, wysokosc i szerokość, są typu int, OzyjWartAktualnych jest zmienną logiczną (true albo false) o domyślnej wartości false. Implementacja funkcji RysujKsztalt () rozpoczyna się w linii 27. Badana jest wartość trzeciego parametru - OzyjWartAktualnych. Jeśli jest on prawdziwy, to zmiennym lokalnym jegoSzerokosc i jegoWysokosc nadawane są wartości zmiennych wewnętrznych rysowanaSzerokosc i rysowanaWysokosc.
Jeśli zmienna UzyjWartAktualnych jest równa false (niezależnie od źródła wartości), to zmiennym rysowanaSzerokosc i rysowanaWysokosc nadawane są wartości dwóch pierwszych parametrów.
Zauważ, że jeśli zmienna Uzy jWartAktualnych jest równa true, to wartości dwóch
pierwszy parametrów są całkowicie ignorowane.