![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Если это не учебная задача, а практическая, лучше использовать готовое решение, например boost::function + boost::bind.
Все-таки это чисто техническая задача, и тратить время на ее решение (когда она уже решена так мощно, как в бусте), не целесообразно. Стоит только посмотреть на бустовский код, чтобы понять трудозатраты на разработку подобных вещей... Не обязательно использовать именно boost, есть еще Loki и другие подобные библиотеки. -------------------- ... |
|||
|
||||
zss |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 708 Регистрация: 17.6.2004 Репутация: 1 Всего: 2 |
да вроде результат достигнут.
а по boosr у меня нет инфы |
|||
|
||||
ParaPik |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 132 Регистрация: 8.1.2009 Репутация: нет Всего: нет |
Добрый вечер.
У меня один пробел остался с использованием шаблонов. Даже в книгах Страуструпа не нашел ответа. Я хочу спецализировать конструктор в классе. Я могу написать вот так:
Но если пишу так:
компилятор пишет, что нужно написать специализацию всего класса. Пожалуйста поясните, как можно быстрее. |
||||
|
|||||
vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
Здравствуйте, добро пожаловать на форум!
частичная специализацию функций запрещена(если мне память не изменяет). Это сообщение отредактировал(а) vinter - 8.1.2009, 19:00 |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
||||
|
||||
UnrealMan |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 27 Всего: 32 |
||||
|
||||
ParaPik |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 132 Регистрация: 8.1.2009 Репутация: нет Всего: нет |
Т.е. либо специализировать полностью функцию, либо специализировать весь класс. А случайно никто не знает, почему Страуструп решил так спроектировать использование шаблонов?(какова причина)
|
|||
|
||||
ParaPik |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 132 Регистрация: 8.1.2009 Репутация: нет Всего: нет |
Как я понимаю таких данных ни у кого нет. А случайно в стандарте не будет ответа на мой вопрос?
|
|||
|
||||
vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
проще всего посмотреть самому, чем ждать, что это сделают за тебя.
С++ сейчас не является полностью творением Страуструпа, над С++ работает целый комитет по стандартизации. Если я ничег не путаю, то отсутсвие часьтичной специализации функций это недоразумение которое будет исправлено в С++09 |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
Вероятно опять неправильно оценили высказывание: оно не говорит, что перегрузка заменит во всем специализацию, а о том, что при разработке автоматизацию следует искать в перегрузке, а не частичной специализации. И подход соответсвенно надо выбирать соответствующий. ![]() Это сообщение отредактировал(а) mes - 10.1.2009, 13:37 |
|||
|
||||
UnrealMan |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 27 Всего: 32 |
||||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
Нельзя ли точней указать на тот момент, который вы подвергаете сомнению - иначе боюсь мы будем обсуждать разное. |
|||
|
||||
UnrealMan |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 27 Всего: 32 |
||||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
Я не ответил, потому что не понял, о чем конкретно Вы спрашивуете ![]() Исходя из вышесказанного, я лишь могу ответить : прямого цитирования чего либо там не было. Добавлено через 1 минуту и 18 секунд Ну а показать, где неясности в высказываниях возможно ? |
|||
|
||||
UnrealMan |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 27 Всего: 32 |
Я спрашивал о том, что утверждалось в процитированном тексте. Или там ничего не утверждалось? ![]()
Какую автоматизацию? Вот так твоя писанина выглядит со стороны: "при разработке бла-бла-бла следует искать в перегрузке, а не частичной специализации. И подход соответсвенно надо выбирать соответствующий." Я могу лишь читать текст, который ты пишешь, но не могу угадывать твои мысли. Бесплатный совет: если хочешь, чтоб тебя понимали, при выражении своих мыслей в тексте попробуй поставить себя на место читателя, который не осведомлён насчёт твоих заморочек, потому что о них может быть известно только тебе. Это сообщение отредактировал(а) UnrealMan - 10.1.2009, 21:14 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |