Flagi - czym to się je?
Ostatnio zmodyfikowano 2010-04-12 21:01
joasia_sz Temat założony przez niniejszego użytkownika |
Flagi - czym to się je? » 2010-04-12 20:41:05 Witam. Było wytłumaczone, czym są te flagi, lecz ja nadal niezbyt rozumiem czym to się je, jak to zastosować, co to jest i po co. Byłabym wdzięczna za szersze wyjaśnienie. Pozdrawiam :) |
|
DejaVu |
» 2010-04-12 21:01:58 To zależy czego flagi dotyczą. W ogólnym przypadku znaczy to tyle: Flaga ustawiona = watść true (1) Flaga nieustawiona = wartość false (0) Zmienna w której ustawiamy flagi za pomocą stałych, zapalają odpowiednie bity. Flagi można w takim polu łączyć. Przykładem argumentu flagowego jest metoda open() dla fstream'a, tj. std::fstream plik; plik.open( "nazwa.txt", std::ios::in | std::ios::out ); W powyższym wypadku zostały ustawione dwie flagi - flaga odczytu i flaga zapisu. Flagi zostały oddzielone od siebie operatorem logicznym OR, czyli kreską pionową. Flagi reprezentuje się zazwyczaj za pomocą liczby całkowitej, np. int, która zazwyczaj posiada 32 bity. Każdy bit może stanowić osobną flagę, dzięki czemu przekazując jedną zmienną do funkcji możemy ustawić aż 32 różne stany dla danej funkcji. W praktyce rzadko kiedy jest potrzeba przekazania aż tylu stanów jednocześnie, jednak jest to użyteczne dlatego, że umożliwia nam tworzenie kombinacji stanów i włączanie tylko tych opcji, które nas interesują. |
|
« 1 » |