Шаблон - это предписание для создания класса, в котором один или несколько типов либо значений параметризованы.
Да - вообще полезно прочитать вступление здесь.
То есть шаблон позволяет нам задать описание класса, использующего тип данных, который можно определить "на ходу" 0при создании класса, а не заранее - как при обычном его описании.
Пример: