I have a class that looks like this:
template <typename T> struct myclass;
template <typename T> struct myclass {
T value;
vector< unique_ptr<myclass<T>> > children;
};
This works great, but what I'd really like is to be able to specify vector as a template parameter:
template <typename T, typename Container> struct myclass;
template <typename T, typename Container> struct myclass {
T value;
Container< unique_ptr<myclass<T>> > children;
}
myclass<int, vector> x;
I understand that this doesn't work, how do I do something like it where Container can be any vector-like class?