Я хочу написать функцию, которая принимает любой контейнер, содержащий строки. Примерно так:
template <typename Container> void foo(Container<string>& stuff);
Но это не правильный синтаксис. Какой правильный синтаксис?
Вам нужен параметр шаблона шаблона :
template < template <typename> class Container> void foo (Container<string>& stuff);