История изменений
Исправление www_linux_org_ru, (текущая версия) :
Просто для протокола: Foo<T1> и Foo<T2> - это разные классы, порожденные одним шаблоном Foo.
с точки зрения пользователя этих классов это вовсе не обязательно так (т.е. эти классы для пользователя вовсе не обязательно различны); при этом проектировщик шаблона Foo может заставить компилятор уважать и учитывать точку зрения пользователя
хотя, конечно, кое-где поддержка этого может хромать
Исходная версия www_linux_org_ru, :
Просто для протокола: Foo<T1> и Foo<T2> - это разные классы, порожденные одним шаблоном Foo.
с точки зрения пользователя этих классов это вовсе не обязательно так; при этом проектировщик шаблона Foo может заставить компилятор уважать и учитывать точку зрения пользователя
хотя, конечно, кое-где поддержка этого может хромать