How to use the deque::begin and deque:end STL functions in Visual C++ (156591)



The information in this article applies to:

  • The Standard C++ Library, when used with:
    • Microsoft Visual C++, 32-bit Enterprise Edition 4.2
    • Microsoft Visual C++, 32-bit Enterprise Edition 5.0
    • Microsoft Visual C++, 32-bit Enterprise Edition 6.0
    • Microsoft Visual C++, 32-bit Professional Edition 4.2
    • Microsoft Visual C++, 32-bit Professional Edition 5.0
    • Microsoft Visual C++, 32-bit Professional Edition 6.0
    • Microsoft Visual C++, 32-bit Learning Edition 6.0
    • Microsoft Visual C++ 2005 Express Edition
    • Microsoft Visual C++ .NET (2003)
    • Microsoft Visual C++ .NET (2002)

This article was previously published under Q156591

SUMMARY

The sample code below illustrates how to use the deque::begin and deque::end STL functions in Visual C++.

MORE INFORMATION

Required header

   < deque>

Prototype

   const_iterator begin() const;
   iterator begin();

   const_iterator end() const;
   iterator end();
Note The class/parameter names in the prototype may not match the version in the header file. Some have been modified to improve readability.

Description

The begin member function returns a random-access iterator that points at the first element of the sequence, or just beyond the end of an empty sequence.

The end member function returns a random-access iterator that points just beyond the end of the sequence.

Sample code

Note In the first line of the sample code section, /GX is equivalent to /EHsc in Visual C++ .NET or in Visual C ++ 2005 and is set by default.
////////////////////////////////////////////////////////////////////// 
// 
// Compile options needed: -GX
// 
// deque.cpp :
// 
// Functions:
// 
//    begin()
//    end()
// 
// Written by Bobby Mattappally
// of Microsoft Product Support Services,
// Copyright (c) 1996 Microsoft Corporation. All rights reserved.
////////////////////////////////////////////////////////////////////// 

/* Compile options needed:-GX
*/ 
#include <iostream>
#include <deque>

#if _MSC_VER > 1020   // if VC++ version is > 4.2
   using namespace std;  // std c++ libs implemented in std
   #endif

typedef deque<int, allocator<int> >  INTDEQUE;

void main()

{

    // Create A and fill it with elements 1,2,3,4 and 5
    // using push_back function

    INTDEQUE  A;
    A.push_back(1);
    A.push_back(2);
    A.push_back(3);
    A.push_back(4);
    A.push_back(5);

    // Print the contents of A using iterator
    // and functions begin() and end()

     INTDEQUE::iterator pi;

    for(pi= A.begin();  pi !=A.end(); pi++)
    {
        cout << *pi <<" " ;
    }
        cout<<endl;

}
Program Output is:
1 2 3 4 5
If you experience the C1010 error when you compile the sample code in Visual Studio .NET, see the following article in Microsoft Knowledge base:

815644 INFO: Most common causes of C1010 error

REFERENCES

For the same topic about deque::begin and deque::end, visit the following MSDN Web site: http://msdn.microsoft.com/library/en-us/vclang98/html/sample_dequeCCbegin_and_dequeCCend_(STL_Sample).asp?frame=true

Modification Type:MajorLast Reviewed:1/18/2006
Keywords:kbhowto kbcode kbinfo KB156591 kbAudDeveloper