Can i do something like
template<class Key, class Data, class Compare = less<Key>, template<typename T> class Allocator<T> = allocator<T> >
class mymap {
typedef map<Key,Data,Compare,Allocator<pair<const Key, Data> > > storageMap;
typedef vector<Data,Allocator<Data> > storageVector;
}
So template is passed to the class unspecialiazed and instantiated later.