/:- Этот простой стек автомати

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

/:- Этот простой стек автоматически расширяется по мере заполнения. Специализация для void* является полной, на что указывает префикс templateo (с пустым списком параметров шаблона). Как уже упоминалось, в специализации шаблона класса должны быть реализованы все функции класса. Экономия достигается для всех остальных указателей. Неполная специализация для прочих типов указателей создается закрытым наследованием от Stack, поскольку мы всего лишь задействуем Stack в реализации и не желаем предоставлять пользователю прямой доступ к его интерфейсу. Функции класса в каждой специализации ограничиваются простым перенаправлением вызова к соответствующим функциям Разрешение имен 217 Stack. Таким образом, при каждой специализации шаблона для типа указателя, отличного от void*, размер сгенерированного кода составит лишь ничтожную часть того размера, который бы потребовался при использовании основного шаблона. Ниже приводится тестовая программа: //: C05:NobloatTest.cpp #include #include #include “Nobloat.h” using namespace std; tempiate void emptyTheStack(


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