#include <vector>
template<typename T,
template <typename, typename = std::allocator<T>> class Container>
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
class MyMultibyteString
{
Container<T> buffer;
// ...
};
int main()
{
MyMultibyteString<char, std::vector> mbs;
}
I2luY2x1ZGUgPHZlY3Rvcj4KCnRlbXBsYXRlPHR5cGVuYW1lIFQsCiAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUsIHR5cGVuYW1lID0gc3RkOjphbGxvY2F0b3I8VD4+IGNsYXNzIENvbnRhaW5lcj4KLy8gICAgICAgICAgICAgICAgICAgXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4KY2xhc3MgTXlNdWx0aWJ5dGVTdHJpbmcKewogICAgQ29udGFpbmVyPFQ+IGJ1ZmZlcjsKICAgIC8vIC4uLgp9OwoKaW50IG1haW4oKQp7CiAgICBNeU11bHRpYnl0ZVN0cmluZzxjaGFyLCBzdGQ6OnZlY3Rvcj4gbWJzOwp9Cg==