нии специализации Т*, как в ст

Автор admin Среда, 20 мая 2009 11:32

нии специализации Т*, как в строке 5, Т представляет не передаваемый тип указателя верхнего уровня, а тот тип, на который этот указатель ссылается (в данном случае float). Спецификация Т* может рассматриваться как условное обозначение для поиска типов указателей. Если передать в первом аргументе шаблона int**, то Т будет соответствовать int*. Строка 8 неоднозначна, потому что наличие первого параметра типа int и совпадение двух типов параметров не зависят друг от друга — один аспект не обеспечивает большей специализации по сравнению с другим. Аналогичная логика применима к строкам 9-12. Пример На базе шаблона класса легко можно определять производные шаблоны классов. Допустим, если шаблон vector делает большую часть того, что вам нужно, но в вашей конкретной ситуации нужна поддержка автоматической сортировки, вы можете легко воспользоваться готовым кодом vector. В следующем примере создается шаблон, производный от vector, и в него добавляется поддержка сортировки. Учтите, что создание классов, производных от класса vector, который не имеет виртуального деструктора, может оказаться рискованным, если в


Комментарии закрыты.