Doesn't has a generic class.
But they have a similar mechanism: Iterators. Let me put a example:
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <vector>
#include <list>
using namespace std;
template<class InputIterator>
void printContainer(InputIterator begin_it,InputIterator end_it)
{
while (begin_it != end_it)
{
cout << (*begin_it) << ' ';
begin_it++;
}
cout << endl;
}
int main()
{
vector<int> vector_data;
list<int> list_data;
srand(time(0));
for (int i = 0;i < 5;i++)
{
int n = rand() % 10;
vector_data.push_back(n);
list_data.push_back(n);
}
printContainer(vector_data.begin(),vector_data.end());
printContainer(list_data.begin(),list_data.end());
}
Check algorithm library, it has functions for generic containers:
http://www.cplusplus.com/reference/algorithm/