Sdílet prostřednictvím


list (STL/CLR)

Třída šablony popisuje objekt, který řídí různou délkovou sekvenci prvků, které mají obousměrný přístup. Kontejner slouží list ke správě posloupnosti prvků jako obousměrného propojeného seznamu uzlů, přičemž každý ukládá jeden prvek.

V následujícím popisu je stejná jako Hodnota, GValue pokud druhý typ odkazu, v takovém případě je Value^to .

Syntaxe

template<typename Value>
    ref class list
        :   public
        System::ICloneable,
        System::Collections::IEnumerable,
        System::Collections::ICollection,
        System::Collections::Generic::IEnumerable<GValue>,
        System::Collections::Generic::ICollection<GValue>,
        Microsoft::VisualC::StlClr::IList<GValue>
    { ..... };

Parametry

Hodnota
Typ elementu v řízené sekvenci

Požadavky

Header:<cliext/list>

Obor názvů: cliext

Deklarace

Definice typu Popis
list::const_iterator (STL/CLR) Typ konstantního iterátoru řízené sekvence
list::const_reference (STL/CLR) Typ konstantního odkazu na prvek
list::const_reverse_iterator (STL/CLR) Typ konstantního zpětného iterátoru pro řízenou sekvenci.
list::difference_type (STL/CLR) Typ vzdálenosti se znaménkem mezi dvěma prvky
list::generic_container (STL/CLR) Typ obecného rozhraní pro kontejner.
list::generic_iterator (STL/CLR) Typ iterátoru pro obecné rozhraní kontejneru.
list::generic_reverse_iterator (STL/CLR) Typ zpětného iterátoru pro obecné rozhraní kontejneru.
list::generic_value (STL/CLR) Typ elementu pro obecné rozhraní kontejneru.
list::iterator (STL/CLR) Typ iterátoru řízené sekvence
list::reference (STL/CLR) Typ odkazu na prvek
list::reverse_iterator (STL/CLR) Typ zpětné iterátoru pro řízenou sekvenci.
list::size_type (STL/CLR) Typ vzdálenosti se znaménkem mezi dvěma prvky
list::value_type (STL/CLR) Typ prvku
Členská funkce Popis
list::assign (STL/CLR) Nahradí všechny prvky.
list::back (STL/CLR) Přistupuje k poslednímu prvku.
list::begin (STL/CLR) Určuje začátek řízené sekvence.
list::clear (STL/CLR) Odebere všechny prvky.
list::empty (STL/CLR) Zkouší, zda nejsou přítomny žádné prvky.
list::end (STL/CLR) Určuje konec řízené sekvence.
list::erase (STL/CLR) Odebere prvky v určených pozicích.
list::front (STL/CLR) Přistupuje k prvnímu prvku.
list::insert (STL/CLR) Přidá prvky na zadanou pozici.
list::list (STL/CLR) Sestaví objekt kontejneru.
list::merge (STL/CLR) Sloučí dvě seřazené řízené sekvence.
list::pop_back (STL/CLR) Odebere poslední prvek.
list::pop_front (STL/CLR) Odebere první prvek.
list::push_back (STL/CLR) Přidá nový poslední prvek.
list::push_front (STL/CLR) Přidá nový první prvek.
list::rbegin (STL/CLR) Určuje začátek obrácené řízené sekvence.
list::remove (STL/CLR) Odebere prvek se zadanou hodnotou.
list::remove_if (STL/CLR) Odebere prvky, které projdou zadaným testem.
list::rend (STL/CLR) Určuje konec obrácené řízené sekvence.
list::resize (STL/CLR) Změní počet prvků.
list::reverse (STL/CLR) Obrátí řízenou sekvenci.
list::size (STL/CLR) Spočítá počet prvků.
list::sort (STL/CLR) Objedná řízenou sekvenci.
list::splice (STL/CLR) Restitches propojení mezi uzly.
list::swap (STL/CLR) Zamění obsah dvou kontejnerů.
list::to_array (STL/CLR) Zkopíruje řízenou sekvenci do nového pole.
list::unique (STL/CLR) Odebere sousední prvky, které projdou zadaným testem.
Vlastnost Popis
list::back_item (STL/CLR) Přistupuje k poslednímu prvku.
list::front_item (STL/CLR) Přistupuje k prvnímu prvku.
Operátor Popis
list::operator= (STL/CLR) Nahradí řízenou sekvenci.
operator!= (list) (STL/CLR) Určuje, zda list objekt není roven jinému list objektu.
operator< (list) (STL/CLR) Určuje, zda list je objekt menší než jiný list objekt.
operator<= (list) (STL/CLR) Určuje, zda list je objekt menší nebo roven jinému list objektu.
operator== (list) (STL/CLR) Určuje, zda je list objekt roven jinému list objektu.
operator> (list) (STL/CLR) Určuje, zda list je objekt větší než jiný list objekt.
operator>= (list) (STL/CLR) Určuje, zda list je objekt větší nebo roven jinému list objektu.

Rozhraní

Rozhraní Popis
ICloneable Duplikovat objekt
IEnumerable Sekvencovat prvky.
ICollection Udržujte skupinu prvků.
IEnumerable<T> Sekvencovat přes typové prvky.
ICollection<T> Udržujte skupinu typed elementů.
Hodnota IList<> Udržujte obecný kontejner.

Poznámky

Objekt přidělí a uvolní úložiště pro sekvenci, která řídí jako jednotlivé uzly v obousměrném seznamu odkazů. Změní uspořádání prvků změnou propojení mezi uzly, nikdy zkopírováním obsahu jednoho uzlu do druhého. To znamená, že můžete vložit a odebrat prvky volně bez rušivých zbývajících prvků. Seznam je tedy vhodným kandidátem pro podkladový kontejner pro frontu tříd šablony (STL/CLR) nebo zásobník tříd šablony (STL/CLR).

Objekt list podporuje obousměrné iterátory, což znamená, že můžete přejít k sousedním prvkům vzhledem k iterátoru, který určuje prvek v řízené sekvenci. Speciální hlavní uzel odpovídá iterátoru vrácené list::end (STL/CLR).() Pokud existuje, můžete tento iterátor dekrementovat, abyste dosáhli posledního prvku v řízené sekvenci. Můžete zvýšit iterátor seznamu tak, aby se dostal do hlavního uzlu, a pak se porovná se rovna end(). Nemůžete ale odvodit iterátor vrácený end().

Všimněte si, že nelze odkazovat na prvek seznamu přímo vzhledem k jeho číselné poloze – který vyžaduje iterátor náhodného přístupu. Seznam proto není použitelný jako podkladový kontejner pro třídu šablony priority_queue (STL/CLR).

Iterátor seznamu ukládá popisovač do přidruženého uzlu seznamu, který pak ukládá popisovač do přidruženého kontejneru. Iterátory můžete používat pouze s přidruženými objekty kontejneru. Iterátor seznamu zůstane platný, pokud je přidružený uzel seznamu přidružený k určitému seznamu. Kromě toho je platný iterátor dereferencovatelný – můžete ho použít pro přístup k hodnotě prvku, kterou určí , nebo ji můžete změnit, pokud se nerovná end().

Vymazání nebo odebrání prvku volá destruktor pro uloženou hodnotu. Zničení kontejneru vymaže všechny prvky. Kontejner, jehož typ elementu je ref třída zajišťuje, že žádné prvky nedosáhly kontejneru. Všimněte si však, že kontejner popisovačů nezničí jeho prvky.

Členové

list::assign (STL/CLR)

Nahradí všechny prvky.

Syntaxe

void assign(size_type count, value_type val);
template<typename InIt>
    void assign(InIt first, InIt last);
void assign(System::Collections::Generic::IEnumerable<Value>^ right);

Parametry

count
Počet prvků, které se mají vložit

první
Začátek oblasti, která se má vložit.

poslední
Konec oblasti, která se má vložit.

Vpravo
Výčet pro vložení

Val
Hodnota prvku, který chcete vložit.

Poznámky

První členová funkce nahrazuje řízenou sekvenci opakováním prvků počtu hodnot val. Použijete ho k vyplnění kontejneru prvky, které mají stejnou hodnotu.

Pokud InIt je celočíselná hodnota, druhá členová funkce se chová stejně jako assign((size_type)first, (value_type)last). V opačném případě nahradí řízenou sekvenci sekvencí [first, last). Použijete ho k tomu, aby řízená sekvence byla kopie jinou sekvencí.

Třetí členová funkce nahrazuje řízenou sekvenci sekvencí určenou právem enumerátoru. Použijete ji k tomu, aby řízená sekvence byla kopií sekvence popsaná enumerátorem.

Příklad

// cliext_list_assign.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // assign a repetition of values
    cliext::list<wchar_t> c2;
    c2.assign(6, L'x');
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // assign an iterator range
    cliext::list<wchar_t>::iterator it = c1.end();
    c2.assign(c1.begin(), --it);
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // assign an enumeration
    c2.assign(   // NOTE: cast is not needed
        (System::Collections::Generic::IEnumerable<wchar_t>^)%c1);
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
x x x x x x
a b
a b c

list::back (STL/CLR)

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, když víte, že existuje.

Příklad

// cliext_list_back.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        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)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
back() = c
a b x

list::back_item (STL/CLR)

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_list_back_item.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        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)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
back_item = c
a b x

list::begin (STL/CLR)

Určuje začátek řízené sekvence.

Syntaxe

iterator begin();

Poznámky

Členová funkce vrátí iterátor náhodného přístupu, který určuje první prvek řízené sekvence nebo těsně za koncem prázdné sekvence. Použijete ho k získání iterátoru, který určuje current začátek řízené sekvence, ale jeho stav se může změnit, pokud se změní délka řízené sekvence.

Příklad

// cliext_list_begin.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // inspect first two items
    cliext::list<wchar_t>::iterator it = c1.begin();
    System::Console::WriteLine("*begin() = {0}", *it);
    System::Console::WriteLine("*++begin() = {0}", *++it);

    // alter first two items and reinspect
    *--it = L'x';
    *++it = L'y';
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
*begin() = a
*++begin() = b
x y c

list::clear (STL/CLR)

Odebere všechny prvky.

Syntaxe

void clear();

Poznámky

Členská funkce efektivně volá list::erase (STL/CLR)( list::begin (STL/CLR)(), list::end (STL/CLR)()). Použijete ho k zajištění, že řízená sekvence je prázdná.

Příklad

// cliext_list_clear.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // clear the container and reinspect
    c1.clear();
    System::Console::WriteLine("size() = {0}", c1.size());

    // add elements and clear again
    c1.push_back(L'a');
    c1.push_back(L'b');

    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    c1.clear();
    System::Console::WriteLine("size() = {0}", c1.size());
    return (0);
    }
a b c
size() = 0
a b
size() = 0

list::const_iterator (STL/CLR)

Typ konstantního iterátoru řízené sekvence

Syntaxe

typedef T2 const_iterator;

Poznámky

Typ popisuje objekt nezadaného typu T2 , který může sloužit jako konstantní iterátor náhodného přístupu pro řízenou sekvenci.

Příklad

// cliext_list_const_iterator.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    cliext::list<wchar_t>::const_iterator cit = c1.begin();
    for (; cit != c1.end(); ++cit)
        System::Console::Write("{0} ", *cit);
    System::Console::WriteLine();
    return (0);
    }
a b c

list::const_reference (STL/CLR)

Typ konstantního odkazu na prvek

Syntaxe

typedef value_type% const_reference;

Poznámky

Typ popisuje konstantní odkaz na prvek.

Příklad

// cliext_list_const_reference.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    cliext::list<wchar_t>::const_iterator cit = c1.begin();
    for (; cit != c1.end(); ++cit)
        {   // get a const reference to an element
        cliext::list<wchar_t>::const_reference cref = *cit;
        System::Console::Write("{0} ", cref);
        }
    System::Console::WriteLine();
    return (0);
    }
a b c

list::const_reverse_iterator (STL/CLR)

Typ konstantního zpětného iterátoru pro řízenou sekvenci.

Syntaxe

typedef T4 const_reverse_iterator;

Poznámky

Typ popisuje objekt nezadaného typu T4 , který může sloužit jako konstantní reverzní iterátor pro řízenou sekvenci.

Příklad

// cliext_list_const_reverse_iterator.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c" reversed
    cliext::list<wchar_t>::const_reverse_iterator crit = c1.rbegin();
    cliext::list<wchar_t>::const_reverse_iterator crend = c1.rend();
    for (; crit != crend; ++crit)
        System::Console::Write("{0} ", *crit);
    System::Console::WriteLine();
    return (0);
    }
c b a

list::difference_type (STL/CLR)

Typy podepsané vzdálenosti mezi dvěma prvky.

Syntaxe

typedef int difference_type;

Poznámky

Typ popisuje počet podepsaných prvků.

Příklad

// cliext_list_difference_type.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // compute positive difference
    cliext::list<wchar_t>::difference_type diff = 0;
    for (cliext::list<wchar_t>::iterator it = c1.begin();
        it != c1.end(); ++it) ++diff;
    System::Console::WriteLine("end()-begin() = {0}", diff);

    // compute negative difference
    diff = 0;
    for (cliext::list<wchar_t>::iterator it = c1.end();
        it != c1.begin(); --it) --diff;
    System::Console::WriteLine("begin()-end() = {0}", diff);
    return (0);
    }
a b c
end()-begin() = 3
begin()-end() = -3

list::empty (STL/CLR)

Zkouší, zda nejsou přítomny žádné prvky.

Syntaxe

bool empty();

Poznámky

Členová funkce vrátí hodnotu true pro prázdnou řízenou sekvenci. Odpovídá hodnotě list::size (STL/CLR).() == 0 Použijete ho k otestování, jestli je seznam prázdný.

Příklad

// cliext_list_empty.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        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.clear();
    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

list::end (STL/CLR)

Určuje konec řízené sekvence.

Syntaxe

iterator end();

Poznámky

Členová funkce vrátí iterátor náhodného přístupu, který odkazuje těsně za koncem řízené sekvence. Použijete jej k získání iterátoru, který určuje konec řízené sekvence; jeho stav se nezmění, pokud se změní délka řízené sekvence.

Příklad

// cliext_list_end.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // inspect last two items
    cliext::list<wchar_t>::iterator it = c1.end();
    --it;
    System::Console::WriteLine("*-- --end() = {0}", *--it);
    System::Console::WriteLine("*--end() = {0}", *++it);

    // alter first two items and reinspect
    *--it = L'x';
    *++it = L'y';
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
*-- --end() = b
*--end() = c
a x y

list::erase (STL/CLR)

Odebere prvky v určených pozicích.

Syntaxe

iterator erase(iterator where);
iterator erase(iterator first, iterator last);

Parametry

první
Začátek rozsahu, který chcete vymazat.

poslední
Konec rozsahu, který chcete vymazat.

kde
Prvek, který chcete vymazat.

Poznámky

První členová funkce odebere prvek řízené sekvence, na kterou odkazuje místo. Použijete ho k odebrání jednoho prvku.

Druhá členová funkce odebere prvky řízené sekvence v rozsahu [first, last). Použijete ho k odebrání nulových nebo více souvislých prvků.

Obě členské funkce vrátí iterátor, který určuje první prvek, který zůstane nad rámec všech odebraných prvků, nebo list::end (STL/CLR),() pokud žádný takový prvek neexistuje.

Při mazání prvků je počet kopií prvků lineární v počtu prvků mezi koncem mazání a nejbližším koncem sekvence. (Při mazání jednoho nebo více prvků na obou koncích sekvence nedojde k žádným kopiím prvků.)

Příklad

// cliext_list_erase.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // erase an element and reinspect
    System::Console::WriteLine("erase(begin()) = {0}",
        *c1.erase(c1.begin()));

    // add elements and display " b c d e"
    c1.push_back(L'd');
    c1.push_back(L'e');
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // erase all but end
    cliext::list<wchar_t>::iterator it = c1.end();
    System::Console::WriteLine("erase(begin(), end()-1) = {0}",
        *c1.erase(c1.begin(), --it));
    System::Console::WriteLine("size() = {0}", c1.size());
    return (0);
    }
a b c
erase(begin()) = b
b c d e
erase(begin(), end()-1) = e
size() = 1

list::front (STL/CLR)

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 ke čtení nebo zápisu prvního prvku, když víte, že existuje.

Příklad

// cliext_list_front.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        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)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
front() = a
x b c

list::front_item (STL/CLR)

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, když víte, že existuje.

Příklad

// cliext_list_front_item.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // inspect first item
    System::Console::WriteLine("front_item = {0}", c1.front_item);

    // alter first item and reinspect
    c1.front_item = L'x';
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
front_item = a
x b c

list::generic_container (STL/CLR)

Typ obecného rozhraní pro kontejner.

Syntaxe

typedef Microsoft::VisualC::StlClr::
    IList<generic_value>
    generic_container;

Poznámky

Typ popisuje obecné rozhraní pro tuto třídu kontejneru šablony.

Příklad

// cliext_list_generic_container.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // construct a generic container
    cliext::list<wchar_t>::generic_container^ gc1 = %c1;
    for each (wchar_t elem in gc1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // modify generic and display original
    gc1->insert(gc1->end(), L'd');
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // modify original and display generic
    c1.push_back(L'e');

    System::Collections::IEnumerator^ enum1 =
        gc1->GetEnumerator();
    while (enum1->MoveNext())
        System::Console::Write("{0} ", enum1->Current);
    System::Console::WriteLine();
    return (0);
    }
a b c
a b c
a b c d
a b c d e

list::generic_iterator (STL/CLR)

Typ iterátoru pro použití s obecným rozhraním kontejneru.

Syntaxe

typedef Microsoft::VisualC::StlClr::Generic::
    ContainerBidirectionalIterator<generic_value>
    generic_iterator;

Poznámky

Typ popisuje obecný iterátor, který lze použít s obecným rozhraním pro tuto třídu kontejneru šablony.

Příklad

// cliext_list_generic_iterator.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // construct a generic container
    cliext::list<wchar_t>::generic_container^ gc1 = %c1;
    for each (wchar_t elem in gc1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // modify generic and display original
    cliext::list<wchar_t>::generic_iterator gcit = gc1->begin();
    cliext::list<wchar_t>::generic_value gcval = *gcit;
    *++gcit = gcval;
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
a b c
a a c

list::generic_reverse_iterator (STL/CLR)

Typ zpětného iterátoru pro použití s obecným rozhraním kontejneru.

Syntaxe

typedef Microsoft::VisualC::StlClr::Generic::
    ReverseBidirectionalIterator<generic_value> generic_reverse_iterator;

Poznámky

Typ popisuje obecný reverzní iterátor, který lze použít s obecným rozhraním pro tuto třídu kontejneru šablony.

Příklad

// cliext_list_generic_reverse_iterator.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // construct a generic container
    cliext::list<wchar_t>::generic_container^ gc1 = %c1;
    for each (wchar_t elem in gc1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // modify generic and display original
    cliext::list<wchar_t>::generic_reverse_iterator gcit = gc1->rbegin();
    cliext::list<wchar_t>::generic_value gcval = *gcit;
    *++gcit = gcval;
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
a b c
a c c

list::generic_value (STL/CLR)

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.

Příklad

// cliext_list_generic_value.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // construct a generic container
    cliext::list<wchar_t>::generic_container^ gc1 = %c1;
    for each (wchar_t elem in gc1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // modify generic and display original
    cliext::list<wchar_t>::generic_iterator gcit = gc1->begin();
    cliext::list<wchar_t>::generic_value gcval = *gcit;
    *++gcit = gcval;
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
a b c
a a c

list::insert (STL/CLR)

Přidá prvky na zadanou pozici.

Syntaxe

iterator insert(iterator where, value_type val);
void insert(iterator where, size_type count, value_type val);
template<typename InIt>
    void insert(iterator where, InIt first, InIt last);
void insert(iterator where,
    System::Collections::Generic::IEnumerable<Value>^ right);

Parametry

count
Počet prvků, které se mají vložit

první
Začátek oblasti, která se má vložit.

poslední
Konec oblasti, která se má vložit.

Vpravo
Výčet pro vložení

Val
Hodnota prvku, který chcete vložit.

kde
Kde v kontejneru vložit před.

Poznámky

Každá z členských funkcí vloží před prvek odkazovaný na místo v řízené sekvenci, posloupnost určená zbývajícími operandy.

První člen funkce vloží prvek s hodnotou val a vrátí iterátor, který určuje nově vložený prvek. Slouží k vložení jednoho prvku před místo určené iterátorem.

Druhá členová funkce vloží opakování prvků počtu hodnot val. Slouží k vložení nulových nebo více souvislých prvků, které jsou všechny kopie stejné hodnoty.

Pokud InIt je celočíselná hodnota, třetí členová funkce se chová stejně jako insert(where, (size_type)first, (value_type)last). Jinak vloží sekvenci [first, last). Slouží k vložení nulových nebo více souvislých prvků zkopírovaných z jiné sekvence.

Čtvrtá členová funkce vloží posloupnost určenou vpravo. Slouží k vložení sekvence popsané enumerátorem.

Při vkládání jednoho prvku je počet kopií prvků lineární v počtu prvků mezi kurzorem a nejbližším koncem sekvence. (Při vkládání jednoho nebo více prvků na konec sekvence nedojde k žádným kopiím prvků.) Pokud InIt je vstupní iterátor, třetí člen funkce efektivně provede pro každý prvek v sekvenci jediné vložení. V opačném případě při vkládání N prvků je počet kopií prvků lineární v N plus počet prvků mezi kurzorem a nejbližším koncem sekvence.

Příklad

// cliext_list_insert.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // insert a single value using iterator
    cliext::list<wchar_t>::iterator it = c1.begin();
    System::Console::WriteLine("insert(begin()+1, L'x') = {0}",
        *c1.insert(++it, L'x'));
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // insert a repetition of values
    cliext::list<wchar_t> c2;
    c2.insert(c2.begin(), 2, L'y');
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // insert an iterator range
    it = c1.end();
    c2.insert(c2.end(), c1.begin(), --it);
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // insert an enumeration
    c2.insert(c2.begin(),   // NOTE: cast is not needed
        (System::Collections::Generic::IEnumerable<wchar_t>^)%c1);
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // insert a single value using index
    it = c2.begin();
    ++it, ++it, ++it;
    c2.insert(it, L'z');
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    return (0);
    }
a b c
insert(begin()+1, L'x') = x
a x b c
y y
y y a x b
a x b c y y a x b

list::iterator (STL/CLR)

Typ iterátoru řízené sekvence

Syntaxe

typedef T1 iterator;

Poznámky

Typ popisuje objekt nezadaného typu T1 , který může sloužit jako iterátor náhodného přístupu pro řízenou sekvenci.

Příklad

// cliext_list_iterator.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    cliext::list<wchar_t>::iterator it = c1.begin();
    for (; it != c1.end(); ++it)
        System::Console::Write("{0} ", *it);
    System::Console::WriteLine();

    // alter first element and redisplay
    it = c1.begin();
    *it = L'x';
    for (; it != c1.end(); ++it)
        System::Console::Write("{0} ", *it);
    System::Console::WriteLine();
    return (0);
    }
a b c
x b c

list::list (STL/CLR)

Sestaví objekt kontejneru.

Syntaxe

list();
list(list<Value>% right);
list(list<Value>^ right);
explicit list(size_type count);
list(size_type count, value_type val);
template<typename InIt>
    list(InIt first, InIt last);
list(System::Collections::Generic::IEnumerable<Value>^ right);

Parametry

count
Počet prvků, které se mají vložit

první
Začátek oblasti, která se má vložit.

poslední
Konec oblasti, která se má vložit.

Vpravo
Objekt nebo oblast, které chcete vložit.

Val
Hodnota prvku, který chcete vložit.

Poznámky

Konstruktor:

list();

inicializuje řízenou sekvenci bez prvků. Použijete ho k určení prázdné počáteční řízené sekvence.

Konstruktor:

list(list<Value>% right);

inicializuje řízenou sekvenci [right.begin(), right.end()). Slouží k určení počáteční řízené sekvence, která je kopií sekvence řízené právem objektu seznamu.

Konstruktor:

list(list<Value>^ right);

inicializuje řízenou sekvenci [right->begin(), right->end()). Slouží k určení počáteční řízené sekvence, která je kopií sekvence řízené objektem seznamu, jehož popisovač je správný.

Konstruktor:

explicit list(size_type count);

inicializuje řízenou sekvenci s počtem prvků každý s hodnotou value_type(). Použijete ho k vyplnění kontejneru prvky, které mají výchozí hodnotu.

Konstruktor:

list(size_type count, value_type val);

inicializuje řízenou sekvenci s počtem prvků každý s hodnotou val. Použijete ho k vyplnění kontejneru prvky, které mají stejnou hodnotu.

Konstruktor:

template<typename InIt>

list(InIt first, InIt last);

inicializuje řízenou sekvenci [first, last). Použijete ji k tomu, aby řízená sekvence byla kopií jiné sekvence.

Konstruktor:

list(System::Collections::Generic::IEnumerable<Value>^ right);

inicializuje řízenou sekvenci sekvencí určenou zprava enumerátoru. Použijete ho k tomu, aby řízená sekvence byla kopií jiné sekvence popsané enumerátorem.

Příklad

// cliext_list_construct.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
// construct an empty container
    cliext::list<wchar_t> c1;
    System::Console::WriteLine("size() = {0}", c1.size());

    // construct with a repetition of default values
    cliext::list<wchar_t> c2(3);
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", (int)elem);
    System::Console::WriteLine();

    // construct with a repetition of values
    cliext::list<wchar_t> c3(6, L'x');
    for each (wchar_t elem in c3)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // construct with an iterator range
    cliext::list<wchar_t>::iterator it = c3.end();
    cliext::list<wchar_t> c4(c3.begin(), --it);
    for each (wchar_t elem in c4)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // construct with an enumeration
    cliext::list<wchar_t> c5(   // NOTE: cast is not needed
        (System::Collections::Generic::IEnumerable<wchar_t>^)%c3);
    for each (wchar_t elem in c5)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // construct by copying another container
    cliext::list<wchar_t> c7(c3);
    for each (wchar_t elem in c7)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // construct by copying a container handle
    cliext::list<wchar_t> c8(%c3);
    for each (wchar_t elem in c8)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    return (0);
    }
size() = 0
0 0 0
x x x x x x
x x x x x
x x x x x x
x x x x x x
x x x x x x

list::merge (STL/CLR)

Sloučí dvě seřazené řízené sekvence.

Syntaxe

void merge(list<Value>% right);
template<typename Pred2>
    void merge(list<Value>% right, Pred2 pred);

Parametry

před
Comparer for element pairs.

Vpravo
Kontejner pro sloučení

Poznámky

První členová funkce odebere všechny prvky z sekvence řízené vpravo a vloží je do řízené sekvence. Obě sekvence musí být dříve seřazené podle operator< prvků – prvky nesmí při procházení jedné sekvence snížit hodnotu. Výsledná sekvence je také seřazena podle operator<. Tuto členovou funkci použijete ke sloučení dvou sekvencí, které zvyšují hodnotu do sekvence, která se také zvyšuje.

Druhá členová funkce se chová stejně jako první, s tím rozdílem pred -- pred(X, Y) , že sekvence jsou seřazeny podle hodnoty false pro všechny prvky X , které následují Y v posloupnosti. Použijete ho ke sloučení dvou sekvencí seřazených podle funkce predikátu nebo delegáta, který zadáte.

Obě funkce provádějí stabilní sloučení – ve výsledné řízené sekvenci není obrácena žádná dvojice prvků v jedné z původních kontrolovaných sekvencí. Také, pokud dvojice prvků X a Y ve výsledné řízené sekvenci má ekvivalentní řazení -- !(X < Y) && !(X < Y) - prvek z původní řízené sekvence se zobrazí před prvkem z sekvence řízené vpravo.

Příklad

// cliext_list_merge.cpp
// compile with: /clr
#include <cliext/list>

typedef cliext::list<wchar_t> Mylist;
int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'c');
    c1.push_back(L'e');

    // display initial contents " a c e"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    cliext::list<wchar_t> c2;
    c2.push_back(L'b');
    c2.push_back(L'd');
    c2.push_back(L'f');

    // display initial contents " b d f"
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // merge and display
    cliext::list<wchar_t> c3(c1);
    c3.merge(c2);
    for each (wchar_t elem in c3)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    System::Console::WriteLine("c2.size() = {0}", c2.size());

    // sort descending, merge descending, and redisplay
    c1.sort(cliext::greater<wchar_t>());
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    c3.sort(cliext::greater<wchar_t>());
    for each (wchar_t elem in c3)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    c3.merge(c1, cliext::greater<wchar_t>());
    for each (wchar_t elem in c3)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    System::Console::WriteLine("c1.size() = {0}", c1.size());
    return (0);
    }
a c e
b d f
a b c d e f
c2.size() = 0
e c a
f e d c b a
f e e d c c b a a
c1.size() = 0

list::operator= (STL/CLR)

Nahradí řízenou sekvenci.

Syntaxe

list<Value>% operator=(list<Value>% right);

Parametry

Vpravo
Kontejner, který se má zkopírovat.

Poznámky

Operátor člena zkopíruje právo na objekt a pak vrátí *this. Slouží k nahrazení řízené sekvence kopií řízené sekvence vpravo.

Příklad

// cliext_list_operator_as.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // assign to a new container
    cliext::list<wchar_t> c2;
    c2 = c1;
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
a b c

list::pop_back (STL/CLR)

Odebere poslední prvek.

Syntaxe

void pop_back();

Poznámky

Členová funkce odebere poslední prvek řízené sekvence, která musí být neprázdná. Slouží ke zkrácení seznamu o jeden prvek na zadní straně.

Příklad

// cliext_list_pop_back.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // pop an element and redisplay
    c1.pop_back();
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
a b

list::pop_front (STL/CLR)

Odebere první prvek.

Syntaxe

void pop_front();

Poznámky

Členová funkce odebere první prvek řízené sekvence, která musí být neprázdná. Slouží ke zkrácení seznamu o jeden prvek na přední straně.

Příklad

// cliext_list_pop_front.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // pop an element and redisplay
    c1.pop_front();
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
b c

list::push_back (STL/CLR)

Přidá nový poslední prvek.

Syntaxe

void push_back(value_type val);

Poznámky

Členová funkce vloží prvek s hodnotou val na konec řízené sekvence. Použijete ho k připojení dalšího prvku do seznamu.

Příklad

// cliext_list_push_back.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c

list::push_front (STL/CLR)

Přidá nový první prvek.

Syntaxe

void push_front(value_type val);

Poznámky

Členová funkce vloží prvek s hodnotou val na začátek řízené sekvence. Použijete ho k předpřipravení dalšího prvku do seznamu.

Příklad

// cliext_list_push_front.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_front(L'a');
    c1.push_front(L'b');
    c1.push_front(L'c');

    // display contents " c b a"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
c b a

list::rbegin (STL/CLR)

Určuje začátek obrácené řízené sekvence.

Syntaxe

reverse_iterator rbegin();

Poznámky

Členová funkce vrátí reverzní iterátor, který určuje poslední prvek řízené sekvence nebo těsně za začátek prázdné sekvence. Proto určuje beginning zpětnou sekvenci. Použijete ho k získání iterátoru, který určuje current začátek řízené sekvence zobrazené v obráceném pořadí, ale její stav se může změnit, pokud se délka řízené sekvence změní.

Příklad

// cliext_list_rbegin.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // inspect first two items in reversed sequence
    cliext::list<wchar_t>::reverse_iterator rit = c1.rbegin();
    System::Console::WriteLine("*rbegin() = {0}", *rit);
    System::Console::WriteLine("*++rbegin() = {0}", *++rit);

    // alter first two items and reinspect
    *--rit = L'x';
    *++rit = L'y';
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
*rbegin() = c
*++rbegin() = b
a y x

list::reference (STL/CLR)

Typ odkazu na prvek

Syntaxe

typedef value_type% reference;

Poznámky

Typ popisuje odkaz na prvek.

Příklad

// cliext_list_reference.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    cliext::list<wchar_t>::iterator it = c1.begin();
    for (; it != c1.end(); ++it)
        {   // get a reference to an element
        cliext::list<wchar_t>::reference ref = *it;
        System::Console::Write("{0} ", ref);
        }
    System::Console::WriteLine();

    // modify contents " a b c"
    for (it = c1.begin(); it != c1.end(); ++it)
        {   // get a reference to an element
        cliext::list<wchar_t>::reference ref = *it;

        ref += (wchar_t)(L'A' - L'a');
        System::Console::Write("{0} ", ref);
        }
    System::Console::WriteLine();
    return (0);
    }
a b c
A B C

list::remove (STL/CLR)

Odebere prvek se zadanou hodnotou.

Syntaxe

void remove(value_type val);

Parametry

Val
Hodnota prvku, který chcete odebrat.

Poznámky

Členová funkce odebere prvek v řízené sekvenci, pro který ((System::Object^)val)->Equals((System::Object^)x) je true (pokud existuje). Použijete ho k vymazání libovolného prvku se zadanou hodnotou.

Příklad

// cliext_list_remove.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // fail to remove and redisplay
    c1.remove(L'A');
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // remove and redisplay
    c1.remove(L'b');
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
a b c
a c

list::remove_if (STL/CLR)

Odebere prvky, které projdou zadaným testem.

Syntaxe

template<typename Pred1>
    void remove_if(Pred1 pred);

Parametry

před
Otestujte prvky, které se mají odebrat.

Poznámky

Členová funkce odebere z řízené sekvence (vymaže) každý prvek X , pro který pred(X) je pravdivý. Použijete ho k odebrání všech prvků, které splňují podmínku, kterou zadáte jako funkci nebo delegáta.

Příklad

// cliext_list_remove_if.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'b');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b b b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // fail to remove and redisplay
    c1.remove_if(cliext::binder2nd<cliext::equal_to<wchar_t> >(
        cliext::equal_to<wchar_t>(), L'd'));
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // remove and redisplay
    c1.remove_if(cliext::binder2nd<cliext::not_equal_to<wchar_t> >(
        cliext::not_equal_to<wchar_t>(), L'b'));
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b b b c
a b b b c
b b b

list::rend (STL/CLR)

Určuje konec obrácené řízené sekvence.

Syntaxe

reverse_iterator rend();

Poznámky

Členová funkce vrátí reverzní iterátor, který odkazuje přímo na začátek řízené sekvence. Proto určuje end zpětnou sekvenci. Použijete ho k získání iterátoru, který určuje current konec řízené sekvence zobrazené v obráceném pořadí, ale jeho stav se může změnit, pokud se délka řízené sekvence změní.

Příklad

// cliext_list_rend.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // inspect first two items
    cliext::list<wchar_t>::reverse_iterator rit = c1.rend();
    --rit;
    System::Console::WriteLine("*-- --rend() = {0}", *--rit);
    System::Console::WriteLine("*--rend() = {0}", *++rit);

    // alter first two items and reinspect
    *--rit = L'x';
    *++rit = L'y';
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
*-- --rend() = b
*--rend() = a
y x c

list::resize (STL/CLR)

Změní počet prvků.

Syntaxe

void resize(size_type new_size);
void resize(size_type new_size, value_type val);

Parametry

new_size
Nová velikost řízené sekvence

Val
Hodnota odsazení prvku.

Poznámky

Členské funkce zajišťují, že seznam::size (STL/CLR)() od této chvíle vrátí new_size. Pokud musí být řízená sekvence delší, první členová funkce připojí prvky s hodnotou value_type(), zatímco druhá členová funkce připojí prvky s hodnotou val. Aby se kontrolovaná sekvence zkrátila, obě členské funkce efektivně vymažou časy posledního prvku list::size (STL/CLR() -new_size). Používáte ho k zajištění, že řízená sekvence má velikost new_size, a to buď oříznutím nebo odsazením aktuální řízené sekvence.

Příklad

// cliext_list_resize.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
// construct an empty container and pad with default values
    cliext::list<wchar_t> c1;
    System::Console::WriteLine("size() = {0}", c1.size());
    c1.resize(4);
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", (int)elem);
    System::Console::WriteLine();

    // resize to empty
    c1.resize(0);
    System::Console::WriteLine("size() = {0}", c1.size());

    // resize and pad
    c1.resize(5, L'x');
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
size() = 0
0 0 0 0
size() = 0
x x x x x

list::reverse (STL/CLR)

Obrátí řízenou sekvenci.

Syntaxe

void reverse();

Poznámky

Členová funkce obrátí pořadí všech prvků v řízené sekvenci. Použijete ho k vyjádření seznamu prvků.

Příklad

// cliext_list_reverse.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // reverse and redisplay
    c1.reverse();
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
c b a

list::reverse_iterator (STL/CLR)

Typ zpětné iterátoru pro řízenou sekvenci.

Syntaxe

typedef T3 reverse_iterator;

Poznámky

Typ popisuje objekt nespecifikovaného typu T3 , který může sloužit jako reverzní iterátor řízené sekvence.

Příklad

// cliext_list_reverse_iterator.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c" reversed
    cliext::list<wchar_t>::reverse_iterator rit = c1.rbegin();
    for (; rit != c1.rend(); ++rit)
        System::Console::Write("{0} ", *rit);
    System::Console::WriteLine();

    // alter first element and redisplay
    rit = c1.rbegin();
    *rit = L'x';
    for (; rit != c1.rend(); ++rit)
        System::Console::Write("{0} ", *rit);
    System::Console::WriteLine();
    return (0);
    }
c b a
x b a

list::size (STL/CLR)

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ás zajímá, jestli má sekvence nenulovou velikost, přečtěte si téma list::empty (STL/CLR).()

Příklad

// cliext_list_size.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    System::Console::WriteLine("size() = {0} starting with 3", c1.size());

    // clear the container and reinspect
    c1.clear();
    System::Console::WriteLine("size() = {0} after clearing", c1.size());

    // add elements and clear again
    c1.push_back(L'a');
    c1.push_back(L'b');
    System::Console::WriteLine("size() = {0} after adding 2", c1.size());
    return (0);
    }
a b c
size() = 3 starting with 3
size() = 0 after clearing
size() = 2 after adding 2

list::size_type (STL/CLR)

Typ podepsané vzdálenosti mezi dvěma prvky.

Syntaxe

typedef int size_type;

Poznámky

Typ popisuje nezáporný počet prvků.

Příklad

// cliext_list_size_type.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // compute positive difference
    cliext::list<wchar_t>::size_type diff = 0;
    for (cliext::list<wchar_t>::iterator it = c1.begin();
        it != c1.end(); ++it)
        ++diff;
    System::Console::WriteLine("end()-begin() = {0}", diff);
    return (0);
    }
a b c
end()-begin() = 3

list::sort (STL/CLR)

Objedná řízenou sekvenci.

Syntaxe

void sort();
template<typename Pred2>
    void sort(Pred2 pred);

Parametry

před
Comparer for element pairs.

Poznámky

První členová funkce přeuspořádá prvky v řízené sekvenci tak, aby byly seřazeny podle operator< prvků – při procházení posloupnosti se hodnoty nezmenšují. Pomocí této členské funkce seřadíte pořadí ve vzestupném pořadí.

Druhá členová funkce se chová stejně jako první, s tím rozdílem, že sekvence je seřazena pred -- pred(X, Y) podle false pro všechny prvky X , které následuje Y prvek ve výsledné sekvenci. Použijete ho k seřazení pořadí podle funkce predikátu nebo delegáta.

Obě funkce provádějí stabilní řazení – ve výsledné řízené sekvenci není obrácená dvojice prvků v původní řízené sekvenci.

Příklad

// cliext_list_sort.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // sort descending and redisplay
    c1.sort(cliext::greater<wchar_t>());
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // sort ascending and redisplay
    c1.sort();
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
c b a
a b c

list::splice (STL/CLR)

Restitch propojení mezi uzly.

Syntaxe

void splice(iterator where, list<Value>% right);
void splice(iterator where, list<Value>% right,
    iterator first);
void splice(iterator where, list<Value>% right,
    iterator first, iterator last);

Parametry

první
Začátek rozsahu až splice.

poslední
Konec rozsahu až splice.

Vpravo
Kontejner pro splice z.

kde
Kde v kontejneru splice před.

Poznámky

První člen funkce vloží sekvenci řízenou vpravo před prvek v řízené sekvenci ukazující na kde. Odebere také všechny prvky zprava. (%right nesmí být rovno this.) Použijete ho k vychytání všech seznamů do druhého.

Druhá členová funkce odebere prvek, na který odkazuje první v sekvenci řízené vpravo , a vloží ho před prvek v řízené sekvenci odkazované na místo. (Pokud where == first || where == ++first, nedojde k žádné změně.) Použijete ho k vytvoření jednoho prvku jednoho seznamu do druhého.

Třetí členová funkce vloží poduspořádku určenou znakem [first, last) z sekvence řízené vpravo před prvek v řízené sekvenci odkazované na místo, kde. Odebere také původní dílčí uspořádání z sekvence řízené vpravo. (Pokud right == thisoblast [first, last) nesmí obsahovat prvek, na který odkazuje where.) Slouží k splice dílčí sekvence nula nebo více prvků z jednoho seznamu do druhého.

Příklad

// cliext_list_splice.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // splice to a new list
    cliext::list<wchar_t> c2;
    c2.splice(c2.begin(), c1);
    System::Console::WriteLine("c1.size() = {0}", c1.size());
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // return one element
    c1.splice(c1.end(), c2, c2.begin());
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // return remaining elements
    c1.splice(c1.begin(), c2, c2.begin(), c2.end());
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    System::Console::WriteLine("c2.size() = {0}", c2.size());
    return (0);
    }
a b c
c1.size() = 0
a b c
a
b c
b c a
c2.size() = 0

list::swap (STL/CLR)

Zamění obsah dvou kontejnerů.

Syntaxe

void swap(list<Value>% right);

Parametry

Vpravo
Kontejner pro prohození obsahu.

Poznámky

Členová funkce prohodí řízené sekvence mezi *this a vpravo. Provede to v konstantním čase a nevyvolá žádné výjimky. Použijete ho jako rychlý způsob výměny obsahu dvou kontejnerů.

Příklad

// cliext_list_swap.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // construct another container with repetition of values
    cliext::list<wchar_t> c2(5, L'x');
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // swap and redisplay
    c1.swap(c2);
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a b c
x x x x x
x x x x x
a b c

list::to_array (STL/CLR)

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_list_to_array.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // copy the container and modify it
    cli::array<wchar_t>^ a1 = c1.to_array();

    c1.push_back(L'd');
    for each (wchar_t elem in c1)
        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

list::unique (STL/CLR)

Odebere sousední prvky, které projdou zadaným testem.

Syntaxe

void unique();
template<typename Pred2>
    void unique(Pred2 pred);

Parametry

před
Comparer for element pairs.

Poznámky

První člen funkce odebere z řízené sekvence (vymaže) každý prvek, který porovnává stejné s předchozím prvkem - if prvek předchází prvku X Y a X == Y, členské funkce odebere Y. Použijete ho k odebrání všech kromě jedné kopie všech dílčích sekvencí sousedních prvků, které porovnávají stejnou hodnotu. Všimněte si, že pokud je řízená sekvence seřazená, například voláním list::sort (STL/CLR),() členská funkce ponechá pouze prvky s jedinečnými hodnotami. (Proto název).

Druhá členová funkce se chová stejně jako první, s tím rozdílem, že odebere každý prvek za prvkem Y X , pro který pred(X, Y). Použijete ho k odebrání všech kromě jedné kopie všech dílčích sekvencí sousedních prvků, které vyhovují funkci predikátu nebo delegáta, který zadáte. Všimněte si, že pokud je řízená sekvence seřazena, například voláním sort(pred), členová funkce ponechá pouze prvky, které nemají ekvivalentní řazení s jinými prvky.

Příklad

// cliext_list_unique.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display initial contents " a a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // display contents after unique
    cliext::list<wchar_t> c2(c1);
    c2.unique();
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // display contents after unique(not_equal_to)
    c2 = c1;
    c2.unique(cliext::not_equal_to<wchar_t>());
    for each (wchar_t elem in c2)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();
    return (0);
    }
a a b c
a b c
a a

list::value_type (STL/CLR)

Typ prvku

Syntaxe

typedef Value value_type;

Poznámky

Typ je synonymem pro hodnotu parametru šablony.

Příklad

// cliext_list_value_type.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c" using value_type
    for (cliext::list<wchar_t>::iterator it = c1.begin();
        it != c1.end(); ++it)
        {   // store element in value_type object
        cliext::list<wchar_t>::value_type val = *it;

        System::Console::Write("{0} ", val);
        }
    System::Console::WriteLine();
    return (0);
    }
a b c

operator!= (list) (STL/CLR)

Porovnání seznamu se nerovná.

Syntaxe

template<typename Value>
    bool operator!=(list<Value>% left,
        list<Value>% right);

Parametry

Vlevo
Levý kontejner, který chcete porovnat.

Vpravo
Správný kontejner, který chcete porovnat.

Poznámky

Funkce operátoru vrátí !(left == right). Použijete ho k otestování, zda vlevo není seřazeno stejně jako vpravo , když jsou dva seznamy porovnávány elementem.

Příklad

// cliext_list_operator_ne.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // assign to a new container
    cliext::list<wchar_t> c2;
    c2.push_back(L'a');
    c2.push_back(L'b');
    c2.push_back(L'd');

    // display contents " a b d"
    for each (wchar_t elem in c2)
        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< (seznam) (STL/CLR)

Seznam je menší než porovnání.

Syntaxe

template<typename Value>
    bool operator<(list<Value>% left,
        list<Value>% right);

Parametry

Vlevo
Levý kontejner, který chcete porovnat.

Vpravo
Správný kontejner, který chcete porovnat.

Poznámky

Funkce operátoru vrátí hodnotu true, pokud 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 ji k otestování, zda je vlevo seřazena před vpravo , když jsou tyto dva seznamy porovnány elementem.

Příklad

// cliext_list_operator_lt.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // assign to a new container
    cliext::list<wchar_t> c2;
    c2.push_back(L'a');
    c2.push_back(L'b');
    c2.push_back(L'd');

    // display contents " a b d"
    for each (wchar_t elem in c2)
        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<= (seznam) (STL/CLR)

Uveďte menší nebo rovno porovnání.

Syntaxe

template<typename Value>
    bool operator<=(list<Value>% left,
        list<Value>% right);

Parametry

Vlevo
Levý kontejner, který chcete porovnat.

Vpravo
Správný kontejner, který chcete porovnat.

Poznámky

Funkce operátoru vrátí !(right < left). Použijete ho k otestování, zda vlevo není seřazeno po pravé straně, když jsou tyto dva seznamy porovnány elementem.

Příklad

// cliext_list_operator_le.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // assign to a new container
    cliext::list<wchar_t> c2;
    c2.push_back(L'a');
    c2.push_back(L'b');
    c2.push_back(L'd');

    // display contents " a b d"
    for each (wchar_t elem in c2)
        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== (list) (STL/CLR)

Porovnání se seznamem se rovná

Syntaxe

template<typename Value>
    bool operator==(list<Value>% left,
        list<Value>% right);

Parametry

Vlevo
Levý kontejner, který chcete porovnat.

Vpravo
Správný kontejner, který chcete porovnat.

Poznámky

Funkce operátoru vrátí hodnotu true pouze v případě, že sekvence řízené levým a pravým tlačítkem mají stejnou délku a pro každou pozici i, right[i]left[i] == . Použijete ho k otestování, zda je vlevo seřazeno stejně jako vpravo , když jsou oba seznamy porovnávány elementem.

Příklad

// cliext_list_operator_eq.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // assign to a new container
    cliext::list<wchar_t> c2;
    c2.push_back(L'a');
    c2.push_back(L'b');
    c2.push_back(L'd');

    // display contents " a b d"
    for each (wchar_t elem in c2)
        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> (seznam) (STL/CLR)

Seznam je větší než porovnání.

Syntaxe

template<typename Value>
    bool operator>(list<Value>% left,
        list<Value>% right);

Parametry

Vlevo
Levý kontejner, který chcete porovnat.

Vpravo
Správný kontejner, který chcete porovnat.

Poznámky

Funkce operátoru vrátí right < left. Použijete ho k otestování, zda je vlevo seřazena po pravé straně, když jsou oba seznamy porovnány elementem.

Příklad

// cliext_list_operator_gt.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // assign to a new container
    cliext::list<wchar_t> c2;
    c2.push_back(L'a');
    c2.push_back(L'b');
    c2.push_back(L'd');

    // display contents " a b d"
    for each (wchar_t elem in c2)
        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>= (seznam) (STL/CLR)

Seznam větší než nebo rovno porovnání.

Syntaxe

template<typename Value>
    bool operator>=(list<Value>% left,
        list<Value>% right);

Parametry

Vlevo
Levý kontejner, který chcete porovnat.

Vpravo
Správný kontejner, který chcete porovnat.

Poznámky

Funkce operátoru vrátí !(left < right). Použijete ho k otestování, zda vlevo není seřazeno před vpravo , když jsou tyto dva seznamy porovnány elementem.

Příklad

// cliext_list_operator_ge.cpp
// compile with: /clr
#include <cliext/list>

int main()
    {
    cliext::list<wchar_t> c1;
    c1.push_back(L'a');
    c1.push_back(L'b');
    c1.push_back(L'c');

    // display contents " a b c"
    for each (wchar_t elem in c1)
        System::Console::Write("{0} ", elem);
    System::Console::WriteLine();

    // assign to a new container
    cliext::list<wchar_t> c2;
    c2.push_back(L'a');
    c2.push_back(L'b');
    c2.push_back(L'd');

    // display contents " a b d"
    for each (wchar_t elem in c2)
        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