| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > Вопрос по работе с шаблонным классам |
| Автор: OlegSK 7.2.2011, 21:26 | ||||
Читаю книгу Шилдта, "Полный справочник по C++" (4-е издание) и сейчас закончил чтение главы посвященной шаблонам. К сожалению, Шилдт как-то скомкал описание явно заданных специализаций для шаблонных классов. В частности, он не показал как делать определение методов явно заданной специализации класса вне объявления класса-специализации. Помогите, плиз, разобраться с этим... Например, есть следующий шаблонный класс:
Теперь требуется сделать явную специализацию этого класса для работы с типом int. С объявлением класса специализации проблем не возникает, т.к. Шилдт показал как это можно сделать:
Остается непонятным синтаксис определения вне объявления класса-специализации методов push и pop. Пытался разобраться с этим методом тыка, но что-то не получилось, - компилятор постоянно ругается и видимо не понимает что я от него хочу. Покажите, плиз, как определять методы класса-специализации вне объявления этого класса... З.Ы: Не обращайте внимание на то, что в приведенном коде по сути не требуется явное задание класса-специализации для типа int, т.к. функциональность у них тут по сути одинаковая. Это сейчас не важно. |
| Автор: OlegSK 8.2.2011, 00:52 |
| volatile, благодарю за помощь! Получилось! Я и сам пробовал так делать, но не догадался не использовать template, и перед определением методов класса-специализации указывал template<> из-за которого и ругался компилятор... Сорри, не заметил когда набивал код... В коде приложения этой ошибки нет. |