30 Godzina 3
|aHnsHiiM| Ciągłe pisanie unsigned short int wydaję się być nudne i podatne na błędy. C++ pozwala na tworzenie alternatywnych nazw typów poprzez użycie słowa kluczowego typedef służącego do definiowania typów.
Faktycznie tworzony jest synonim dla istniejącego typu i należy to odróżniać od tworzenia nowego typu (nowe typy będziemy tworzyć w trakcie godziny 6 — „Proste klasy”), typedef używa się poprzez napisanie typedef, a następnie nazwy istniejącego typu i nazwy alternatywnej. Np.: typedef unsigned short int USHORT
w ten sposób tworzymy słowo kluczowe USHORT, którego możemy używać do definiowania zmiennych typu unsigned short int. Listing 3.3. będący przeróbką listingu 3.2. pokazuje jak wykorzystać typedef.
Listing 3.3. Demonstracja typedef
^ • II ********************
2: // demonstracja typedef
3: #include <iostream.h>
4:
5: typedef unsigned short int USHORT;
6:
7: int main ()
8: {
9: USHORT szerokość * 5;
10: USHORT dlugosc;
11: dlugosc = 10;
12: USHORT pole = szerokość * dlugosc;
13: cout « "Szerokość:" « szerokość « "\n";
14: cout « "Dlugosc:" « dlugosc « endl;
15: cout « "Pole:" « pole « endl;
16: return 0;
17: )
EFEKT DZIAŁANIA:
Szerokość: 5 Dlugosc: 10 Pole: 50
Niektóre kompilatory mogą zgłosić ostrzeżenie, że konwersja w linii 12 może powodować utratę cyfr znaczących (ang „conversion may lose significant digits”). Dzieje się tak, ponieważ w linii 12 iloczyn dwóch zmiennych typu USHORT może być większy niż maksymalna liczba możliwa do przedstawienia w zmiennej typu USHORT i przypisanie może spowodować obcięcie. W tym konkretnym przypadku możesz to ostrzeżenie pominąć.
W linii 5 USHORT jest definiowany jako synonim dla unsigned short int. Poza tym program jest identyczny z tym z listingu 3.2. Efekt działania jest taki sam.
Ciągle pisanie unsigned short int wydaję się być nudne i podatne na błędy. C++ pozwala na tworzenie alternatywnych nazw typów poprzez użycie słowa kluczowego typedef służącego do definiowania typów.
NOWY TERMIN
Faktycznie tworzony jest synonim dla istniejącego typu i należy to odróżniać od tworzenia nowego typu (nowe typy będziemy tworzyć w trakcie godziny 6 - „Proste klasy"), typedef używa się poprzez napisanie typedef. a następnie nazwy istniejącego typu i nazwy alternatywnej. Np.:
typedef unsigned short int USHORT
w ten sposób tworzymy słowo kluczowe OSHORT, którego możemy używać do definiowania zmiennych typu unsigned short int. Listing 3.3. będący przeróbką listingu 3.2. pokazuje jak wykorzystać typedef.
1: // ********************
2: // demonstracja typedef
3: #include <iostream.h>
4:
5: typedef unsigned short int USHORT;
6:
7: int main()
8: (
9: OSHORT szerokość = 5;
10: OSHORT dlugosc;
11: dlugosc = 10;
12: OSHORT pole = szerokość * dlugosc;
13: cout « "Szerokość:" « szerokość « "\n";
14: cout « "Dlugosc:" « dlugosc « endl;
15: cout « "Pole:" « pole « endl;
16: return 0;
17: }
EFEKT DZIAŁANIA:
Szerokość: 5 Dlugosc: 10 Pole: 50
Niektóre kompilatory mogą zgłosić ostrzeżenie, że konwersja w linii 12 może powodować utratę cyfr znaczących (ang „conversion may lose significant digits"). Dzieje się tak, ponieważ w linii 12 iloczyn dwóch zmiennych typu USH0RT może być większy niż maksymalna liczba możliwa do przedstawienia w zmiennej typu USHORT i przypisanie może spowodować obcięcie. W tym konkretnym przypadku możesz to ostrzeżenie pominąć.
ANALIZA
W linii 5 USHORT jest definiowany jako synonim dla unsigned short int. Poza tym program jest identyczny z tym z listingu 3.2. Efekt działania jest taki sam.