1  #include <iostream>
  2  #include <stack>
  3  #include <vector>
  4  using namespace std;
  5  
  6  template<typename T>
  7  void printStack(T& stack)
  8  {
  9    while (!stack.empty())
 10    {
 11      cout << stack.top() << " ";
 12      stack.pop();
 13    }
 14  }
 15  
 16  int main()
 17  {
 18    stack<int> stack1;
 19    stack<int, vector<int>> stack2;
 20  
 21    for (int i = 0; i < 8; i++)
 22    {
 23      stack1.push(i);
 24      stack2.push(i);
 25    }
 26  
 27    cout << "Contents in stack1: ";
 28    printStack(stack1);
 29  
 30    cout << "\nContents in stack2: ";
 31    printStack(stack2);
 32  
 33    return 0;
 34  }