Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Třída šablony popisuje objekt, který řídí různou délkovou sekvenci prvků, které mají přístup při prvním outu. Pomocí adaptéru queue kontejneru můžete spravovat základní kontejner jako frontu.
V následujícím popisu je stejný jako GValue v případě, Value že druhý typ odkazu, v takovém případě je Value^to . Podobně je to stejné jako GContainer v případě, Container že se jedná o typ odkazu, v takovém případě je Container^to .
Syntaxe
template<typename Value,
typename Container>
ref class queue
: public
System::ICloneable,
Microsoft::VisualC::StlClr::IQueue<GValue, GContainer>
{ ..... };
Parametry
Value
Typ elementu v řízené sekvenci
Container
Typ podkladového kontejneru.
Požadavky
Záhlaví:<cliext/queue>
Obor názvů:cliext
Důležité
Pokud chcete zkompilovat příklady v tomto tématu, ujistěte se, že jste nainstalovali podporu C++/CLI, jak je popsáno v tématu Instalace podpory C++/CLI v sadě Visual Studio 2022. Pro typ projektu vytvořte konzolovou aplikaci CLR (.NET Framework).
Deklarace
| Definice typu | Popis |
|---|---|
queue::const_reference |
Typ konstantního odkazu na prvek |
queue::container_type |
Typ podkladového kontejneru. |
queue::difference_type |
Typ vzdálenosti se znaménkem mezi dvěma prvky |
queue::generic_container |
Typ obecného rozhraní pro adaptér kontejneru. |
queue::generic_value |
Typ elementu pro obecné rozhraní pro adaptér kontejneru. |
queue::reference |
Typ odkazu na prvek |
queue::size_type |
Typ vzdálenosti se znaménkem mezi dvěma prvky |
queue::value_type |
Typ prvku |
| Členová funkce | Popis |
|---|---|
queue::assign |
Nahradí všechny prvky. |
queue::back |
Přistupuje k poslednímu prvku. |
queue::empty |
Zkouší, zda nejsou přítomny žádné prvky. |
queue::front |
Přistupuje k prvnímu prvku. |
queue::get_container |
Přistupuje k podkladovému kontejneru. |
queue::pop |
Odebere první prvek. |
queue::push |
Přidá nový poslední prvek. |
queue::queue |
Sestaví objekt kontejneru. |
queue::size |
Spočítá počet prvků. |
queue::to_array |
Zkopíruje řízenou sekvenci do nového pole. |
| Vlastnost | Popis |
|---|---|
queue::back_item |
Přistupuje k poslednímu prvku. |
queue::front_item |
Přistupuje k prvnímu prvku. |
| Operátor | Popis |
|---|---|
queue::operator= |
Nahradí řízenou sekvenci. |
operator!= (fronta) |
Určuje, jestli se objekt nerovná jinému queuequeue objektu. |
operator< (fronta) |
Určuje, zda queue je objekt menší než jiný queue objekt. |
operator<= (fronta) |
Určuje, zda queue je objekt menší nebo roven jinému queue objektu. |
operator== (fronta) |
Určuje, zda je queue objekt roven jinému queue objektu. |
operator> (fronta) |
Určuje, zda queue je objekt větší než jiný queue objekt. |
operator>= (fronta) |
Určuje, zda queue je objekt větší nebo roven jinému queue objektu. |
Rozhraní
| Rozhraní | Popis |
|---|---|
| ICloneable | Duplikovat objekt |
IQueue<Value, Container> |
Udržujte obecný adaptér kontejneru. |
Poznámky
Objekt přidělí a uvolní úložiště pro sekvenci, kterou řídí prostřednictvím základního kontejneru typu Container , který ukládá Value prvky a roste na vyžádání. Objekt omezuje přístup pouze k nasdílení prvního prvku a přeskočení posledního prvku, implementaci fronty prvního v prvním ven (označované také jako fronta FIFO nebo jednoduše fronta).
Členové
queue::assign
Nahradí všechny prvky.
Syntaxe
void assign(queue<Value, Container>% right);
Parametry
right
Adaptér kontejneru, který se má vložit.
Poznámky
Členová funkce se přiřadí right.get_container() k podkladovému kontejneru. Použijete ho ke změně celého obsahu fronty.
Příklad
// cliext_queue_assign.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display initial contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// assign a repetition of values
Myqueue c2;
c2.assign(c1);
for each (wchar_t elem in c2.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
a b c
queue::back
Přistupuje k poslednímu prvku.
Syntaxe
reference back();
Poznámky
Členová funkce vrátí odkaz na poslední prvek řízené sekvence, která musí být neprázdná. Použijete ho pro přístup k poslednímu prvku, pokud víte, že existuje.
Příklad
// cliext_queue_back.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display initial contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// inspect last item
System::Console::WriteLine("back() = {0}", c1.back());
// alter last item and reinspect
c1.back() = L'x';
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
back() = c
a b x
queue::back_item
Přistupuje k poslednímu prvku.
Syntaxe
property value_type back_item;
Poznámky
Vlastnost přistupuje k poslednímu prvku řízené sekvence, která musí být neprázdná. Použijete ho ke čtení nebo zápisu posledního prvku, pokud víte, že existuje.
Příklad
// cliext_queue_back_item.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display initial contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// inspect last item
System::Console::WriteLine("back_item = {0}", c1.back_item);
// alter last item and reinspect
c1.back_item = L'x';
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
back_item = c
a b x
queue::const_reference
Typ konstantního odkazu na prvek
Syntaxe
typedef value_type% const_reference;
Poznámky
Typ popisuje konstantní odkaz na prvek.
Příklad
// cliext_queue_const_reference.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for (; !c1.empty(); c1.pop())
{ // get a const reference to an element
Myqueue::const_reference cref = c1.front();
System::Console::Write("{0} ", cref);
}
System::Console::WriteLine();
return (0);
}
a b c
queue::container_type
Typ podkladového kontejneru.
Syntaxe
typedef Container value_type;
Poznámky
Typ je synonymem pro parametr Containeršablony .
Příklad
// cliext_queue_container_type.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c" using container_type
Myqueue::container_type wc1 = c1.get_container();
for each (wchar_t elem in wc1)
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
queue::difference_type
Typy podepsané vzdálenosti mezi dvěma prvky.
Syntaxe
typedef int difference_type;
Poznámky
Typ popisuje pravděpodobně záporný počet prvků.
Příklad
// cliext_queue_difference_type.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display initial contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// compute negative difference
Myqueue::difference_type diff = c1.size();
c1.push(L'd');
c1.push(L'e');
diff -= c1.size();
System::Console::WriteLine("pushing 2 = {0}", diff);
// compute positive difference
diff = c1.size();
c1.pop();
c1.pop();
c1.pop();
diff -= c1.size();
System::Console::WriteLine("popping 3 = {0}", diff);
return (0);
}
a b c
pushing 2 = -2
popping 3 = 3
queue::empty
Zkouší, zda nejsou přítomny žádné prvky.
Syntaxe
bool empty();
Poznámky
Členová funkce vrátí hodnotu true pro prázdnou řízenou sekvenci. Je to ekvivalent .size() == 0 Použijete ho k otestování queue , jestli je prázdný.
Příklad
// cliext_queue_empty.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display initial contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
System::Console::WriteLine("size() = {0}", c1.size());
System::Console::WriteLine("empty() = {0}", c1.empty());
// clear the container and reinspect
c1.pop();
c1.pop();
c1.pop();
System::Console::WriteLine("size() = {0}", c1.size());
System::Console::WriteLine("empty() = {0}", c1.empty());
return (0);
}
a b c
size() = 3
empty() = False
size() = 0
empty() = True
queue::front
Přistupuje k prvnímu prvku.
Syntaxe
reference front();
Poznámky
Členová funkce vrátí odkaz na první prvek řízené sekvence, která musí být neprázdná. Použijete ho pro přístup k prvnímu prvku, když víte, že existuje.
Příklad
// cliext_queue_front.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display initial contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// inspect first item
System::Console::WriteLine("front() = {0}", c1.front());
// alter first item and reinspect
c1.front() = L'x';
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
front() = a
x b c
queue::front_item
Přistupuje k prvnímu prvku.
Syntaxe
property value_type front_item;
Poznámky
Vlastnost přistupuje k prvnímu prvku řízené sekvence, která musí být neprázdná. Použijete ho ke čtení nebo zápisu prvního prvku, pokud víte, že existuje.
Příklad
// cliext_queue_front_item.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display initial contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// inspect last item
System::Console::WriteLine("front_item = {0}", c1.front_item);
// alter last item and reinspect
c1.front_item = L'x';
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
front_item = a
x b c
queue::generic_container
Typ obecného rozhraní pro adaptér kontejneru.
Syntaxe
typedef Microsoft::VisualC::StlClr::IQueue<Value>
generic_container;
Poznámky
Typ popisuje obecné rozhraní pro tuto třídu adaptéru kontejneru šablony.
Příklad
// cliext_queue_generic_container.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// construct a generic container
Myqueue::generic_container^ gc1 = %c1;
for each (wchar_t elem in gc1->get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// modify generic and display original
gc1->push(L'd');
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// modify original and display generic
c1.push(L'e');
for each (wchar_t elem in gc1->get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
a b c
a b c d
a b c d e
queue::generic_value
Typ elementu pro použití s obecným rozhraním kontejneru.
Syntaxe
typedef GValue generic_value;
Poznámky
Typ popisuje objekt typu GValue , který popisuje uloženou hodnotu elementu pro použití s obecným rozhraním pro tuto třídu kontejneru šablony. (GValue je buď value_type nebo value_type^ je-li value_type typ odkazu.)
Příklad
// cliext_queue_generic_value.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// get interface to container
Myqueue::generic_container^ gc1 = %c1;
for each (wchar_t elem in gc1->get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// display in order using generic_value
for (; !gc1->empty(); gc1->pop())
{
Myqueue::generic_value elem = gc1->front();
System::Console::Write("{0} ", elem);
}
System::Console::WriteLine();
return (0);
}
a b c
a b c
a b c
queue::get_container
Přistupuje k podkladovému kontejneru.
Syntaxe
container_type^ get_container();
Poznámky
Členová funkce vrátí základní kontejner. Použijete ho k obejití omezení uložených obálkou kontejneru.
Příklad
// cliext_queue_get_container.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display initial contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
queue::operator=
Nahradí řízenou sekvenci.
Syntaxe
queue <Value, Container>% operator=(queue <Value, Container>% right);
Parametry
right
Adaptér kontejneru, který se má zkopírovat.
Poznámky
Operátor člena zkopíruje right objekt a pak vrátí *this. Slouží k nahrazení řízené sekvence kopií řízené sekvence v right.
Příklad
// cliext_queue_operator_as.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// assign to a new container
Myqueue c2;
c2 = c1;
for each (wchar_t elem in c2.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
a b c
queue::pop
Odebere první prvek.
Syntaxe
void pop();
Poznámky
Odebere první prvek řízené sekvence, který musí být neprázdný.
Příklad
// cliext_queue_pop.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// pop an element and redisplay
c1.pop();
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
b c
queue::push
Přidá nový poslední prvek.
Syntaxe
void push(value_type val);
Poznámky
Členová funkce přidá prvek s hodnotou val na konci fronty. Použijete ho k připojení elementu do fronty.
Příklad
// cliext_queue_push.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
queue::queue
Vytvoří objekt adaptéru kontejneru.
Syntaxe
queue();
queue(queue<Value, Container>% right);
queue(queue<Value, Container>^ right);
explicit queue(container_type% wrapped);
Parametry
right
Objekt, který chcete kopírovat.
wrapped
Zabalený kontejner, který se má použít.
Poznámky
Konstruktor:
queue();
vytvoří prázdný zabalený kontejner. Použijete ho k určení prázdné počáteční řízené sekvence.
Konstruktor:
queue(queue<Value, Container>% right);
vytvoří zabalený kontejner, který je kopií right.get_container(). Slouží k určení počáteční řízené sekvence, která je kopií sekvence řízené objektem queueright.
Konstruktor:
queue(queue<Value, Container>^ right);
vytvoří zabalený kontejner, který je kopií right->get_container(). Slouží k určení počáteční řízené sekvence, která je kopií sekvence řízené objektem queue*right.
Konstruktor:
explicit queue(container_type wrapped);
používá existující kontejner wrapped jako zabalený kontejner. Použijete ho k vytvoření queue z existujícího kontejneru.
Příklad
// cliext_queue_construct.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
#include <cliext/list>
typedef cliext::queue<wchar_t> Myqueue;
typedef cliext::list<wchar_t> Mylist;
typedef cliext::queue<wchar_t, Mylist> Myqueue_list;
int main()
{
// construct an empty container
Myqueue c1;
System::Console::WriteLine("size() = {0}", c1.size());
// construct from an underlying container
Mylist v2(5, L'x');
Myqueue_list c2(v2);
for each (wchar_t elem in c2.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// construct by copying another container
Myqueue_list c3(c2);
for each (wchar_t elem in c3.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// construct by copying another container through handle
Myqueue_list c4(%c2);
for each (wchar_t elem in c4.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
size() = 0
x x x x x
x x x x x
x x x x x
queue::reference
Typ odkazu na prvek
Syntaxe
typedef value_type% reference;
Poznámky
Typ popisuje odkaz na prvek.
Příklad
// cliext_queue_reference.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display initial contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// modify back of queue and redisplay
Myqueue::reference ref = c1.back();
ref = L'x';
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c
a b x
queue::size
Spočítá počet prvků.
Syntaxe
size_type size();
Poznámky
Členová funkce vrátí délku řízené sekvence. Použijete ho k určení počtu prvků aktuálně v řízené sekvenci. Pokud vám záleží na tom, zda sekvence má nenulové velikosti, podívejte se empty()na .
Příklad
// cliext_queue_size.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display initial contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
System::Console::WriteLine("size() = {0} starting with 3", c1.size());
// pop an item and reinspect
c1.pop();
System::Console::WriteLine("size() = {0} after popping", c1.size());
// add two elements and reinspect
c1.push(L'a');
c1.push(L'b');
System::Console::WriteLine("size() = {0} after adding 2", c1.size());
return (0);
}
a b c
size() = 3 starting with 3
size() = 2 after popping
size() = 4 after adding 2
queue::size_type
Typ vzdálenosti se znaménkem mezi dvěma prvky
Syntaxe
typedef int size_type;
Poznámky
Typ popisuje nezáporný počet prvků.
Příklad
// cliext_queue_size_type.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display initial contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// compute positive difference
Myqueue::size_type diff = c1.size();
c1.pop();
c1.pop();
diff -= c1.size();
System::Console::WriteLine("size difference = {0}", diff);
return (0);
}
a b c
size difference = 2
queue::to_array
Zkopíruje řízenou sekvenci do nového pole.
Syntaxe
cli::array<Value>^ to_array();
Poznámky
Členová funkce vrátí matici obsahující řízenou sekvenci. Použijete ji k získání kopie řízené sekvence ve formuláři pole.
Příklad
// cliext_queue_to_array.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// copy the container and modify it
cli::array<wchar_t>^ a1 = c1.to_array();
c1.push(L'd');
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// display the earlier array copy
for each (wchar_t elem in a1)
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
return (0);
}
a b c d
a b c
queue::value_type
Typ prvku
Syntaxe
typedef Value value_type;
Poznámky
Typ je synonymem pro parametr Valuešablony .
Příklad
// cliext_queue_value_type.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display reversed contents "a b c" using value_type
for (; !c1.empty(); c1.pop())
{ // store element in value_type object
Myqueue::value_type val = c1.front();
System::Console::Write("{0} ", val);
}
System::Console::WriteLine();
return (0);
}
a b c
operator!= (fronta)
Queue nerovná se porovnávání.
Syntaxe
template<typename Value,
typename Container>
bool operator!=(queue<Value, Container>% left,
queue<Value, Container>% right);
Parametry
left
Levý kontejner, který chcete porovnat.
right
Správný kontejner, který chcete porovnat.
Poznámky
Funkce operátoru vrátí !(left == right). Použijete ho k otestování, jestli left není seřazený stejně jako right když jsou tyto dvě fronty porovnávány elementem.
Příklad
// cliext_queue_operator_ne.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// assign to a new container
Myqueue c2;
c2.push(L'a');
c2.push(L'b');
c2.push(L'd');
// display contents "a b d"
for each (wchar_t elem in c2.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
System::Console::WriteLine("[a b c] != [a b c] is {0}",
c1 != c1);
System::Console::WriteLine("[a b c] != [a b d] is {0}",
c1 != c2);
return (0);
}
a b c
a b d
[a b c] != [a b c] is False
[a b c] != [a b d] is True
operator< (fronta)
Queue menší než porovnání.
Syntaxe
template<typename Value,
typename Container>
bool operator<(queue<Value, Container>% left,
queue<Value, Container>% right);
Parametry
left
Levý kontejner, který chcete porovnat.
right
Správný kontejner, který chcete porovnat.
Poznámky
Funkce operátoru vrátí hodnotu true if, pro nejnižší pozici i , pro kterou !(right[i] < left[i]) je také pravda left[i] < right[i]. V opačném případě se vrátí left->size() < right->size(). Použijete ho k otestování, zda left je seřazena před right tím, než jsou dvě fronty porovnány elementem.
Příklad
// cliext_queue_operator_lt.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// assign to a new container
Myqueue c2;
c2.push(L'a');
c2.push(L'b');
c2.push(L'd');
// display contents "a b d"
for each (wchar_t elem in c2.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
System::Console::WriteLine("[a b c] < [a b c] is {0}",
c1 < c1);
System::Console::WriteLine("[a b c] < [a b d] is {0}",
c1 < c2);
return (0);
}
a b c
a b d
[a b c] < [a b c] is False
[a b c] < [a b d] is True
operator<= (fronta)
Queue menší než nebo rovno porovnání.
Syntaxe
template<typename Value,
typename Container>
bool operator<=(queue<Value, Container>% left,
queue<Value, Container>% right);
Parametry
left
Levý kontejner, který chcete porovnat.
right
Správný kontejner, který chcete porovnat.
Poznámky
Funkce operátoru vrátí !(right < left). Použijete ho k otestování, jestli left není seřazený po right porovnání obou front elementem.
Příklad
// cliext_queue_operator_le.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// assign to a new container
Myqueue c2;
c2.push(L'a');
c2.push(L'b');
c2.push(L'd');
// display contents "a b d"
for each (wchar_t elem in c2.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
System::Console::WriteLine("[a b c] <= [a b c] is {0}",
c1 <= c1);
System::Console::WriteLine("[a b d] <= [a b c] is {0}",
c2 <= c1);
return (0);
}
a b c
a b d
[a b c] <= [a b c] is True
[a b d] <= [a b c] is False
operator== (fronta)
Queue stejné porovnání.
Syntaxe
template<typename Value,
typename Container>
bool operator==(queue<Value, Container>% left,
queue<Value, Container>% right);
Parametry
left
Levý kontejner, který chcete porovnat.
right
Správný kontejner, který chcete porovnat.
Poznámky
Funkce operátoru vrátí hodnotu true pouze v případě, že sekvence řízené left a right mají stejnou délku a pro každou pozici i, left[i] == right[i]. Použijete ho k otestování, zda left je seřazeno stejně jako right když jsou dvě fronty porovnávány elementem.
Příklad
// cliext_queue_operator_eq.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// assign to a new container
Myqueue c2;
c2.push(L'a');
c2.push(L'b');
c2.push(L'd');
// display contents "a b d"
for each (wchar_t elem in c2.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
System::Console::WriteLine("[a b c] == [a b c] is {0}",
c1 == c1);
System::Console::WriteLine("[a b c] == [a b d] is {0}",
c1 == c2);
return (0);
}
a b c
a b d
[a b c] == [a b c] is True
[a b c] == [a b d] is False
operator> (fronta)
Queue větší než porovnání.
Syntaxe
template<typename Value,
typename Container>
bool operator>(queue<Value, Container>% left,
queue<Value, Container>% right);
Parametry
left
Levý kontejner, který chcete porovnat.
right
Správný kontejner, který chcete porovnat.
Poznámky
Funkce operátoru vrátí right < left. Použijete ho k otestování, zda left je seřazen po right , když jsou dvě fronty porovnány elementem.
Příklad
// cliext_queue_operator_gt.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// assign to a new container
Myqueue c2;
c2.push(L'a');
c2.push(L'b');
c2.push(L'd');
// display contents "a b d"
for each (wchar_t elem in c2.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
System::Console::WriteLine("[a b c] > [a b c] is {0}",
c1 > c1);
System::Console::WriteLine("[a b d] > [a b c] is {0}",
c2 > c1);
return (0);
}
a b c
a b d
[a b c] > [a b c] is False
[a b d] > [a b c] is True
operator>= (fronta)
Queue větší než nebo rovno porovnání.
Syntaxe
template<typename Value,
typename Container>
bool operator>=(queue<Value, Container>% left,
queue<Value, Container>% right);
Parametry
left
Levý kontejner, který chcete porovnat.
right
Správný kontejner, který chcete porovnat.
Poznámky
Funkce operátoru vrátí !(left < right). Použijete ho k otestování, zda left není seřazena před right tím, když jsou tyto dvě fronty porovnány elementem.
Příklad
// cliext_queue_operator_ge.cpp
// compile with: /clr
#include "pch.h"
#include <cliext/queue>
typedef cliext::queue<wchar_t> Myqueue;
int main()
{
Myqueue c1;
c1.push(L'a');
c1.push(L'b');
c1.push(L'c');
// display contents "a b c"
for each (wchar_t elem in c1.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
// assign to a new container
Myqueue c2;
c2.push(L'a');
c2.push(L'b');
c2.push(L'd');
// display contents "a b d"
for each (wchar_t elem in c2.get_container())
System::Console::Write("{0} ", elem);
System::Console::WriteLine();
System::Console::WriteLine("[a b c] >= [a b c] is {0}",
c1 >= c1);
System::Console::WriteLine("[a b c] >= [a b d] is {0}",
c1 >= c2);
return (0);
}
a b c
a b d
[a b c] >= [a b c] is True
[a b c] >= [a b d] is False