Template class with template container
How can I declare template class (adaptor) with different containers as template arguments? For example, I need to declare class: template<typename T, typename Container> class MyMultibyteString { Container buffer; ... }; And I want it to my based on vector. How to make it hard-defined? (to prevent someone from writing such declaration MyMultibyteString<int, vector<char>> ). Moreover, how to implement such construction: MyMultibyteString<int, std::vector> mbs; without passing template argument to container. You should use template template parameters : template<typename T, template <typename,