специализациях задействованы р
Автор admin
Среда, 20 мая 2009 11:32
специализациях задействованы разные версии шаблона: Sortable использует основной шаблон, a Sortable — неполную специализацию для указателей, Sortable — полную специализацию для char*. Без этой полной специализации у вас могло бы сложиться обманчивое впечатление, будто все работает правильно — массив words правильно сортируется в строку «а big dog is running*, поскольку частичная специализация ограничивается сравнением первых символов массивов. Однако на примере массива words2 такая сортировка уже не работает. Ограничение объема генерируемого кода Каждый раз, когда в программе определяется специализация шаблона класса, компилятор генерирует код из определения класса для конкретной специализации вместе со всеми функциями, вызываемыми в программе. При этом генерируются только те функции класса, которые вызываются в программе. И это вполне логично, как показывает следующий пример: //: С05:Delayed Instantiation.срр // Генерируется только код используемых функций шаблонов классов. class X { public: void f() {} }: class Y { public: void g() {} }: template class Z { T t: public
Комментарии закрыты.
Последние комментарии