У меня есть эта структура классов.
class Interface{
...
}
class Foo : public Interface{
...
}
template <class T>
class Container{
...
}
И у меня есть этот конструктор другого класса Bar.
Bar(const Container<Interface> & bar){
...
}
Когда я вызываю конструктор таким образом, я получаю ошибку "отсутствие соответствия".
Container<Foo> container ();
Bar * temp = new Bar(container);
Что не так? Не являются ли шаблоны полиморфными?