![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| jorikdima |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 18.1.2008 Где: Там, где Зенит Репутация: нет Всего: нет |
Здравствуйте.
Читал, читал про специализацию, так и не осознал, как сделать. Есть шаблон:
В нем два параметра и это важно, ибо когда нету Size, а просто template< class Tp> то все компилируется. Есть реализации:
Тут я попытался переопределить метод some_op1 для Tp являющегося int и для Size=6. Но!!! Я не хочу фиксировать реализацию (или как его там... инстантенацию) для фиксированного Size. Хочу, чтобы писалось, что то типа
Но так не компилируется, а выдает кучу ошибок. Как сделать частичную специализацию в моем случае? Спасибо. Это сообщение отредактировал(а) jorikdima - 23.6.2010, 11:44 |
||||||
|
|||||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
? Это сообщение отредактировал(а) azesmcar - 23.6.2010, 12:20 |
|||
|
||||
| jorikdima |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 18.1.2008 Где: Там, где Зенит Репутация: нет Всего: нет |
В том то и дело, что я не хочу переопределять инстантенацию для фиксированного Size, я это проблемой и обозначил. Я хочу чтоб Size оставался параметром шаблона. |
||||
|
|||||
| azesmcar |
|
||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
Да, неверно понял вопрос. Тогда надо специализировать весь класс, частичной специализации функций нету.
Это сообщение отредактировал(а) azesmcar - 23.6.2010, 12:40 |
||||
|
|||||
| jorikdima |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 18.1.2008 Где: Там, где Зенит Репутация: нет Всего: нет |
Понял, спасибо. Печально.
В случае специализации класса я обязан переписать вообще все методы класса, или только те, которые зависят от параметров шаблона? Если все вообще, то тут теряется смысл шаблона. Странно почему нет частичной специализации... что мешало Страуструппу ее ввести? |
|||
|
||||
| azesmcar |
|
||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
можно выкрутиться наследованием. как-то так
Если я правильно помню у Саттера в решении сложных задач описано. Это сообщение отредактировал(а) azesmcar - 23.6.2010, 14:45 |
||||
|
|||||
| jorikdima |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 18.1.2008 Где: Там, где Зенит Репутация: нет Всего: нет |
azesmcar, спасибо. Понял идею.
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |