list::insert (STL Samples)

Muestra cómo utilizar la función de biblioteca de (STL) plantillas estándar de lista:: inserción en Visual C++.

iterator insert(
   iterator It,
   const T& x = T( )
);
void insert(
   iterator It,
   size_type n,
   const T& x
);
void insert(
   iterator It,
   const_iterator First,
   const_iterator Last
);
void insert(
   iterator It,
   const T *First,
   const T *Last
);

Comentarios

[!NOTA]

La clase y los nombres de parámetro en el prototipo no coincide con la versión del archivo de encabezado.Algunos se han modificado para mejorar la legibilidad.

Cada miembro funciona inserta, antes del elemento designado por en la secuencia controlada, una secuencia especificada por los operandos restantes.La primera función miembro inserta un único elemento con el valor x y devuelve un iterador que señala al elemento insertado recientemente.La segunda función miembro inserta una repetición de los elementos del valor n *x.*Las dos últimas funciones miembro insertan la secuencia [First, Last).

Ejemplo

// list_insert.cpp
// compile with: /EHsc
// Shows the various ways to insert elements into a
//               list<T>.

#include <list>
#include <iostream>

using namespace std ;

typedef list<int> LISTINT;

int main()
{
    int rgTest1[] = {5,6,7};
    int rgTest2[] = {10,11,12};

    LISTINT listInt;
    LISTINT listAnother;
    LISTINT::iterator i;

    // Insert one at a time
    listInt.insert (listInt.begin(), 2);
    listInt.insert (listInt.begin(), 1);
    listInt.insert (listInt.end(), 3);

    // 1 2 3
    cout << "listInt:";
    for (i = listInt.begin(); i != listInt.end(); i++)
        cout << " " << *i;
    cout << endl;

    // Insert 3 fours
    listInt.insert (listInt.end(), 3, 4);

    // 1 2 3 4 4 4
    cout << "listInt:";
    for (i = listInt.begin(); i != listInt.end(); ++i)
        cout << " " << *i;
    cout << endl;

    // Insert an array in there
    listInt.insert (listInt.end(), rgTest1, rgTest1 + 3);

    // 1 2 3 4 4 4 5 6 7
    cout << "listInt:";
    for (i = listInt.begin(); i != listInt.end(); ++i)
        cout << " " << *i;
    cout << endl;

    // Insert another LISTINT
    listAnother.insert (listAnother.begin(), rgTest2, rgTest2+3);
    listInt.insert (listInt.end(), listAnother.begin(), listAnother.end());

    // 1 2 3 4 4 4 5 6 7 10 11 12
    cout << "listInt:";
    for (i = listInt.begin(); i != listInt.end(); ++i)
        cout << " " << *i;
    cout << endl;
}

Output

listInt: 1 2 3
listInt: 1 2 3 4 4 4
listInt: 1 2 3 4 4 4 5 6 7
listInt: 1 2 3 4 4 4 5 6 7 10 11 12

Requisitos

Header: <lista>

Vea también

Conceptos

Ejemplos de biblioteca de plantillas estándar