Article ID: 156898
Article Last Modified on 9/16/2003
< deque>
void assign(const_iterator first, const_iterator last); void assign(size_type n, const T& x = T()); void swap(deque& dq);NOTE: The class/parameter names in the prototype may not match the version in the header file. Some have been modified to improve readability.
//////////////////////////////////////////////////////////////////////
//
// Compile options needed: -GX
//
// deque.cpp :
//
// Functions:
//
// assign
// swap
// 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<char, allocator<char> > CHARDEQUE;
void print_contents (CHARDEQUE deque, char*);
void main()
{
//create a with 3 A's
CHARDEQUE a(3,'A');
//create b with 4 B's.
CHARDEQUE b(4,'B');
//print out the contents
print_contents (a,"a");
print_contents (b,"b");
//swap a and b
a.swap(b);
print_contents (a,"a");
print_contents (b,"b");
// let us swap it back
a.swap(b);
print_contents (a,"a");
print_contents (b,"b");
//assign the contents of b to a
a.assign(b.begin(),b.end());
print_contents (a,"a");
//assign the first two items of b to a
a.assign(b.begin(),b.begin()+2);
print_contents (a,"a");
//assign 3 'Z's to a
a.assign(3,'Z');
print_contents (a,"a");
}
//function to print the contents of deque
void print_contents (CHARDEQUE deque, char *name)
{
CHARDEQUE::iterator pdeque;
cout <<"The contents of "<< name <<" : ";
for(pdeque = deque.begin();
pdeque != deque.end();
pdeque++)
{
cout << *pdeque <<" " ;
}
cout<<endl;
}
Program Output is: The contents of a : A A A The contents of b : B B B B The contents of a : B B B B The contents of b : A A A The contents of a : A A A The contents of b : B B B B The contents of a : B B B B The contents of a : B B The contents of a : Z Z Z
Additional query words: STL STLSample assign swap end begin kbSTL kbTemplate
Keywords: kbinfo kbcode KB156898