Istnieją dwa elementy w funkcjach kolejki: „przód”, który odnosi się do komponentu w pierwszej lub przedniej pozycji i „tylnej”, który odnosi się do komponentu w ostatnim miejscu. W typowych kolejkach rzeczy są dodawane do tyłu i usuwane w kierunku przodu.
Składnia
Zacznijmy od składni funkcji kolejki w C++.
Aby utworzyć kolejkę, najpierw musimy dodać "#włączać " W pliku nagłówka.
Przepływ pracy w kolejce w C++
Wyżej opisaną składnię można użyć do zadeklarowania kolejki w C++. Na przykład „Queuenumber” ustanawia kolejkę z tylko członkami liczb całkowitych pod numerem nazwiska. Określona kolejka będzie działać zgodnie z zasadą FIFO (pierwsza w pierwszej). Klasa C ++ STD :: Kolejka zawiera również wiele przydatnych wbudowanych funkcji członków, które można wykorzystać z kolejką.
Zgodnie z poniższą ilustracją, jeśli elementy zostaną dodane do kolejki w następującej kolejności: 10-> 20-> 30-> 40-> 50, zostaną usunięte z kolejki w następującej kolejności: 10-> 20-> 30-> 40-> 50, zaczynając od pierwszego dodanego elementu.
Spójrz na przykładowy kod C ++ podany poniżej, aby zobaczyć, jak funkcjonuje kolejki.
W wyżej ilustrowanym przykładzie tworzymy kolejkę. Najpierw otwórz dowolny kompilator C ++, aby uruchomić program. Początkowo dołączyliśmy plik nagłówka #include, aby zbudować kolejkę. Korzystając z jednolitej inicjalizacji, przypisaliśmy wartości liczb całkowitych do kolejki o nazwie „liczba”, która wynosi 10, 20, 30, 40 i 50. Aby wyświetlić naszą kolejkę, użyliśmy prostej pętli za pomocą funkcji front (). Następnie przeskocz numer, aby uzyskać dane wyjściowe programu. Jak pokazano poniżej, wyjście jest wydrukowane na właściwości FIFO.
Member_types w kolejce C ++
Typ członka, który określa rodzaj pojemnika bazowego, do którego kolejka musi się dostosować, jest rodzaj kontenera. Liczba elementów kolejki jest wyświetlana według typu wielkości jako niepodpisana liczba całkowita. Rodzaj elementów utrzymywanych w pojemniku kolejkowym jest wskazany przez typ zwany typem wartości.
Funkcje kolejki C ++
Rzućmy okiem na niektóre z najczęściej używanych funkcji kolejek w C++.
kolejka :: pusta ()
Metoda wbudowana Metoda C ++ STL (standardowa biblioteka szablonów) kolejka :: pusta () jest zadeklarowana w pliku nagłówka. Status kolejki jest zdefiniowany przez tę funkcję.
Składnia
Spójrz na składnię:
Aby utworzyć kolejkę, pusty () jest zadeklarowany w pliku nagłówka. Ta funkcja nie wymaga żadnej wartości parametrów. Jeśli kolejka jest pusta i nie ma w niej żadnych elementów,
Wartość zwracania funkcji jest prawdziwa. Jeśli funkcja nie jest pusta, wartość zwracania funkcji jest fałszywa.
Błędy i wyjątki
Jeśli parametr jest przekazany, wskazuje błąd; W przeciwnym razie nie wykazuje wyjątków.
Prosty przykład pustego ()
W tym przykładzie wartość wejściowa Myqueue to „1” w funkcji Myqueue.pusty(). W zamian da wyjście jako false, ponieważ jeśli kolejka nie jest pusta, wartość zwracania funkcji jest fałszywa.
Wyżej wymieniony obraz pokazuje włączenie kilku plików nagłówka I.mi., Iostream & kolejka. Następnie mamy naszą główną funkcję typu danych liczb całkowitych. W ramach głównej funkcji mamy zmienną o nazwie „Myqueue”. Aby wyświetlić naszą kolejkę, użyliśmy po prostu if-Else za pomocą funkcji opty (). Następnie, jeśli kolejka jest pusta, wydrukuj prawdę; W przeciwnym razie wydrukuj fałsz.
Przykład funkcji pustej () w przypadku, gdy kolejka jest pusta
Zastosujemy technikę pustej (), aby ustalić, czy kolejka jest pusta. Jeśli kolejka nie jest pusta i wytwarza 0 (false); Jeśli kolejka jest pusta, 1 (prawda).
Uruchom aplikację w dowolnym kompilatorze C ++, otwierając ten pokazany we wspomnianym przykładzie. Początkowo stworzyliśmy pustą kolejkę, włączając plik nagłówka #includequeue>. Języki nazwy ciągu są w kolejce z powodu spójnej inicjalizacji. Dlatego języki.pusty () daje prawdziwe. Następnie dodajemy więcej elementów do kolejki. Jeszcze raz użyj pustych (), aby sprawdzić, czy kolejka jest pusta. Tym razem daje fałszywe wyniki.
Przykład pustej (), aby znaleźć sumę podczas wyskakowania kolejki
Na tej ilustracji tworzymy kolejkę. Zacznij od uruchomienia dowolnego kompilatora C ++ i uruchomienia programu. Aby utworzyć kolejkę, najpierw dodaliśmy plik nagłówka #Include. Istnieje kolejka liczb całkowitych 2, 4, 5, 6 i 8 za pomocą jednolitej inicjalizacji.
Na powyższej ilustracji musimy znaleźć sumę liczb całkowitych. Najpierw sprawdź, czy kolejka jest pusta, a jeśli tak nie. Kontynuuj to, aż linia będzie wolna. Wydrukuj ostateczną wartość zmiennej. Ostateczna wartość jest drukowana na właściwości FIFO.
kolejka :: rozmiar ()
Metoda wbudowana metoda C ++ STL (standardowa biblioteka szablonów) kolejka :: size () jest zadeklarowana w pliku nagłówka. Rozmiar kolejki i elementów są sprawdzane przez tę funkcję.
Składnia
Obraz tutaj przedstawia składnię funkcji kolejki :: size ().
Funkcja rozmiaru () jest wykorzystywana do określenia rozmiaru kolejki. Nie ma wartość parametru które należy przekazać na tę funkcję. Typ elementu typu rozmiaru, niepodpisany typ liczby całkowitej, jest funkcją Wartość zwracana.
Błędy i wyjątki
Jeśli parametr zostanie przekazany, wyświetlany jest błąd i nie ma gwarancji wyrzucania wyjątków.
Przykład wielkości (), aby uzyskać rozmiar kolejki
To prosty przykład rozmiaru (), w którym musimy znaleźć rozmiar kolejki. Najpierw tworzymy kolejkę, a następnie otwieramy dowolny kompilator C ++, aby uruchomić program.
W powyższym przykładzie dodano trzy komponenty do kolejki ciągów zwanych językami. Następnie zastosowano metodę rozmiaru () do obliczenia liczby elementów kolejki. Języki.rozmiar () zwraca 3 w wyniku kolejki zawierającej 3 składniki w kolejce.
Przykład rozmiaru () poprzez uzyskanie suma liczb całkowitych
W tym przykładzie istnieje kolejka liczb całkowitych 2, 4, 5, 6 i 8. Następnie musimy znaleźć sumę liczb całkowitych.
Aby uruchomić program, otwórz dowolny kompilator C ++ po skonstruowaniu kolejki. Aby skonstruować kolejkę, dodaliśmy plik nagłówka #includequeue>. Następnie sprawdź, czy rozmiar kolejki wynosi zero. Jeśli nie, umieść przedni element do zmiennej z inicjalizacją 0. Wydrukuj ostateczną wartość zmiennej. Ostateczna wartość jest drukowana na właściwości FIFO.
kolejka :: front ()
Metoda wbudowana Metoda C ++ STL (standardowa biblioteka szablonów) kolejka :: front () jest zadeklarowana w pliku nagłówka.
Składnia
Załączony zrzut ekranu pokazuje wyraźnie składnię kolejki :: front ().
Plik nagłówka #Include zawiera deklarację kolejki procedury :: front (). Nie ma wartości parametrów, która należy przekazać do tej funkcji.
Błędy i wyjątki
Nie ma wyjątku poprzez gwarancję i niepewne zachowanie, gdy pojemnik jest pusty.
Prosty przykład frontu ()
Oto prosta ilustracja Jak używać z przodu () do zlokalizowania przedniego elementu w kolejce. Aby uruchomić aplikację, otwórz dowolny kompilator C ++ po ustaleniu kolejki. Aby skonstruować kolejkę, dołączamy plik nagłówka #includequeue>.
Korzystając z jednolitej inicjalizacji, przypisaliśmy wartości liczb całkowitych do kolejki o nazwie „Myqueue”, które wynoszą 9, 8, 7 i 6. Użyj Myqueue.front (), aby wyświetlić wartość. Następnie w zamian da wartość 9. Jak pokazano poniżej, wyjście jest wydrukowane na właściwości FIFO.
kolejka.z powrotem()
Metoda wbudowana Metoda C ++ STL (standardowa biblioteka szablonów) kolejka :: back () jest zadeklarowana w pliku nagłówka. Ostatni wpis w kolejce można odwoływać się lub powiązać z danymi za pomocą tej funkcji.
Składnia
Metoda kolejka :: back () jest zadeklarowana w pliku nagłówka. Nie ma wartość parametru które należy dostarczyć do tej funkcji. Ta funkcja zawiera odniesienie do najnowszego lub niedawno włożonego elementu pojemnika kolejki.
Prosty przykład funkcji back ()
To jest prosty przykład funkcji back (). Sprawdźmy przymocowany obraz.
Aby uruchomić skrypt, uruchom dowolny kompilator C ++ i najpierw ustalić kolejkę. Początkowo dołączyliśmy plik nagłówka #includequeue> w celu zbudowania kolejki. Następnie popchnij wartość do kolejki 9, 8, 7 i 6. W zamian będzie to tylny element 6 kolejki.
kolejka :: push ()
Metoda wbudowana Metoda C ++ STL (standardowa biblioteka szablonów) kolejka :: push () jest zadeklarowana w pliku nagłówka. Po umieszczeniu poprzedniego elementu ta funkcja dodaje nowy element. Procedura dodawania nowego elementu do kolejki jest znana jako „Operacja Enqueue."
Składnia
Oto składnia funkcji kolejki :: Push Funkcja.
Typ wartości jest typem elementu elementu, który został dodany do pojemnika kolejki. Ta funkcja niczego nie zwraca.
Prosty przykład push ()
W tym przykładzie musimy nacisnąć elementy w kolejce. Najpierw tworzymy kolejkę. Więc otwórz dowolny kompilator C ++, aby uruchomić program. Dołącz plik nagłówka#Uwzględnij, aby utworzyć kolejkę. Następnie popchnij wartość do kolejki.
Zrobiliśmy kolejkę całkowitą. Wpychamy elementy w kolejce jeden po drugim za pomocą Myqueue.metoda push () za pomocą pętli While i wyświetlaj wartość za pomocą Cout. Ostatecznie pop () jest zaimplementowany w celu wyświetlania kolejki.
Przykład push () poprzez wkładanie elementów w kolejce
Aby dodać element do końca kolejki, używamy metody push ().
W wyżej ilustrowanym przykładzie zwierzę jest kolejką, którą stworzyliśmy.
Wykorzystaliśmy trochę czasu i innych technik kolejki, a nie tylko zgłaszanie elementów kolejki. Jest tak działać jak typowa struktura danych kolejki, dlatego kolejka STL jest adapterem kontenerowym STL, który zapewnia ograniczony dostęp. Dlatego nie jesteśmy w stanie iterować w całej kolejce, jak to możliwe z wektorami lub innymi pojemnikami.
Zamiast tego drukujemy przód elementu, zanim ciągle wyskakujemy w pętli, aż kolejka będzie pusta.
kolejka :: pop ()
Wbudowana funkcja z biblioteki szablonów C ++ (STL) znajduje się w pliku nagłówka kolejki. Pojemnik trzymający element jest pusty, zmniejszając rozmiar kolejki o 1.
Składnia
Oto składnia funkcji pop ().
Nie ma wartości parametrów, która należy dostarczyć do tej funkcji. Ta funkcja niczego nie zwraca.
Błędy i wyjątki
Jeśli parametr jest przekazany, pokazuje błąd i bez wyjątku. Jeśli parametr nie wyrzuca żadnych wyjątków, zrzuć gwarancję.
Prosty przykład pop ()
W tym prostym przykładzie musimy wysyłać elementy z kolejki. Najpierw tworzymy kolejkę. Więc otwórz dowolny kompilator C ++, aby uruchomić program. Początkowo dołączyliśmy plik nagłówka #include konstruowanie kolejki. Następnie popchnij wartość do kolejki.
Zrobiliśmy kolejkę całkowitą. Wpychamy elementy w kolejce jeden po drugim za pomocą Myqueue.Metoda push ().
Zrobiliśmy pop (), aby wyrzucić elementy z funkcji. Wykorzystaliśmy trochę czasu i innych technik kolejki, a nie tylko zgłaszanie elementów kolejki. Jest to, aby działało jak typowa struktura danych kolejki, dlatego kolejka STL jest adapterem kontenerowym STL, który zapewnia ograniczony dostęp.
Kolejka :: swap
Ta funkcja umożliwia przełączanie między elementami w dwóch kolejkach. Rozmiary dwóch kolejek prawdopodobnie różniłyby się od tego, co były początkowo przed zmianą zawartości.
Składnia
Obraz pokazuje składnię funkcji Swap ().
Ta funkcja parametr będzie kolejnym pojemnikiem kolejkowym typu powiązanego. Ta funkcja nie powrót wszystko.
Błędy i wyjątki
Jeśli kolejki nie są tym samym typem, rzuca wyjątek. Jeśli nie, istnieje fundamentalna gwarancja braku wyjątków.
Przykład swap ()
Aby zamienić elementy kolejki, użyj metody swap (). Po pierwsze, tworzymy kolejkę. Więc otwórz dowolny kompilator C ++, aby uruchomić program. Początkowo dołączyliśmy plik nagłówka #include do konstruowania kolejki. Następnie popchnij wartość do kolejki.
W tym przykładzie zrobiliśmy kolejkę postaci. Dodaliśmy komponenty do końca kolejki. Wykorzystaliśmy pętlę i podczas gdy pętla i inne techniki kolejki, a nie tylko zgłaszanie elementów kolejki.
Kolejka :: emplace
Korzystając z tej funkcji, do pojemnika kolejki można dodać dodatkowe elementy.
Składnia
Oto zrzut ekranu składni funkcji emplace ().
Wartość, którą należy dodać na końcu pojemnika kolejki, będzie służyć jako parametr funkcji. Ta funkcja niczego nie zwraca.
Błędy i wyjątki
Oferuje taki sam stopień pewności, jak operacja przeprowadzona na podstawowym obiekcie kontenerowym.
Przykład emplace ()
Skorzystaj z funkcji emplace (), aby włączyć element kolejki. Najpierw uruchom program z dowolnym kompilatorem C ++, ponieważ ustanawiamy kolejkę.
W tym przykładzie utworzono kolejkę ciągów. Komponenty zostały dodane do kolejki. Zamiast po prostu zgłaszać elementy kolejki bezpośrednio, użyliśmy pewnego czasu pętli i dodatkowych strategii w kolejce. Aby wyświetlić dane wyjściowe, wyjmij następnie komponenty z kolejki.
Wniosek
Pojemnik kolejki i jego zastosowanie w C ++ są omówione w tym artykule. Pojemniki kolejki następują po pierwszej metodzie pierwszej (FIFO). W tym artykule wyjaśniono także inne pomocne funkcje elementów, które są dostępne w C ++, takie jak push (), pop (), front (), back (), swap (), emplace (), size () i pusty (). Te funkcje C ++ mają kilka metod przeprowadzania różnych operacji w kolejce, która pomaga programistom bardziej efektywnie korzystać z pojemników kolejki.