vector::front 和 vector::back
說明如何使用 vector::front 和 vector::back Visual C++ 標準樣板程式庫 (STL) 函式。
template<class _TYPE, class _A>
reference vector::front( );
template<class _TYPE, class _A>
reference vector::back( );
備註
![]() |
---|
在原型中的類別/參數名稱不相符的標頭檔中的版本。某些已修改以提高可讀性。 |
這個範例會宣告空白的整數,且 [100、 200、 300、 400] 成員的向量。 它會顯示第一個元素的向量使用vector::front以取得它。 它會顯示最後一個元素的向量使用vector::back以取得它。 它會顯示非向量使用的項目數vector::size。 這個範例會清除向量使用最後一個項目vector::end – 1,然後使用,並顯示新最後一個項目vector::back。 它會清除向量使用第一個項目vector::begin,然後顯示新的第一個項目,並使用vector::front。 最後,範例會顯示在向量使用剩餘的項目數vector::size。
範例
// 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
需求
標頭: <vector>