Freigeben über


vector::front und vector::back

Veranschaulicht, wie die Features Vektor::Vordergrund und Vektor::Zurück Standardvorlagenbibliothek (STL) in Visual C++ verwendet.

template<class _TYPE, class _A>
   reference vector::front( );
template<class _TYPE, class _A>
   reference vector::back( );

Hinweise

HinweisHinweis

Die Klasse/Parameternamen im Prototyp stimmen nicht mit der Version in der Headerdatei ab.Einige wurden geändert, um die Lesbarkeit zu verbessern.

Das Beispiel deklariert einen leeren Vektor mit den Membern von ganzen Zahlen [100, 200, 300, 400].Es zeigt das erste Element des Vektors mithilfe vector::front an, um es zu erhalten.Es zeigt das letzte Element des Vektors mithilfe vector::back an, um es zu erhalten.Es wird die Anzahl von Elementen des Vektors mithilfe vector::sizean.Im Beispiel wird das letzte Element des Vektors mithilfe vector::end 1 und zeigt dann das neue letzte Element mithilfe vector::backan.Es löscht das erste Element des Vektors mithilfe vector::beginund zeigt dann das neue erste Element mithilfe vector::frontan.Abschließend wird im Beispiel die Anzahl der Elemente an, die im Vektor mit vector::sizebleiben.

Beispiel

// frontback.cpp
// compile with: /EHsc
//
// Illustrates the vector::front and vector::back methods.
//
// Functions:
//
// vector::front - Returns reference to first element of vector.
//
// vector::back - Returns reference to last element of vector.
//
// vector::push_back - Appends (inserts) an element to the end of a
//                        vector, allocating memory for it if necessary.
//
// vector::size - Returns number of elements in the vector.
//
// vector::begin - Returns an iterator to start traversal of the vector.
//
// vector::end - Returns an iterator for the last element of the vector.
//
// vector::erase - Deletes elements from a vector (single & range).
//
//////////////////////////////////////////////////////////////////////

// The debugger can't handle symbols more than 255 characters long.
// STL often creates symbols longer than that.
// When symbols are longer than 255 characters, the warning is issued.
#pragma warning(disable:4786)

#include <iostream>
#include <vector>

using namespace std ;

typedef vector<int> INTVECTOR;

const int ARRAY_SIZE = 4;

int main()
{
    // Dynamically allocated vector begins with 0 elements.
    INTVECTOR theVector;

    // Intialize the array to contain the members [100, 200, 300, 400]
    for (int cEachItem = 0; cEachItem < ARRAY_SIZE; cEachItem++)
        theVector.push_back((cEachItem + 1) * 100);

    cout << "First element: " << theVector.front() << endl;
    cout << "Last element: " << theVector.back() << endl;
    cout << "Elements in vector: " << theVector.size() << endl;

    // Delete the last element of the vector. Remember that the vector
    // is 0-based, so theVector.end() actually points 1 element beyond
    // the end.
    theVector.erase(theVector.end() - 1);

    cout << endl << "After erasing last element, new last element is: "
         << theVector.back() << endl;

    // Delete the first element of the vector.
    theVector.erase(theVector.begin());

    cout << "After erasing first element, new first element is: "
         << theVector.front() << endl;

    cout << "Elements in vector: " << theVector.size() << endl;
}

Output

First element: 100
Last element: 400
Elements in vector: 4

After erasing last element, new last element is: 300
After erasing first element, new first element is: 200
Elements in vector: 2

Anforderungen

Header: <vector>

Siehe auch

Konzepte

Standardvorlagenbibliotheks-Beispiele