![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
GrayCardinal |
|
|||
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 2 Всего: 58 |
Как в template класса объявить функцию, принимающую любой другой тип (ну, навроде тоже temlate'а).
Страуструпа не читал, пока методом индукции ![]()
Соответственно правильно записать anyFunction в хэйдере и в коде... Заранее спасибо... Олег. ЗЫ Простите великодушно наСишника за такие вопросы ![]() |
|||
|
||||
Sartorius |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: 8 Всего: 37 |
Если тип аргумента должен отличаться от T так и объяви еще один typename в template...
PS http://valera.asf.ru/cpp/book/c16.shtml - там все подробно написано Это сообщение отредактировал(а) Sartorius - 15.2.2007, 18:31 |
|||
|
||||
Xenon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: 11 Всего: 50 |
? |
|||
|
||||
Oleg_Ci |
|
|||
![]() Friend ![]() ![]() Профиль Группа: Участник Сообщений: 485 Регистрация: 28.5.2006 Где: Новосиб.обл. Репутация: 3 Всего: 30 |
Вчера такое замутил
|
|||
|
||||
Xenon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: 11 Всего: 50 |
Отедльно в хедере и реализацие? Ну тогда не получится сделать функцию, которая принимает любой типа - тебе придется моделью явного воплощения определить какие-то конкретные типы - проще все в хедере сделать
![]() |
|||
|
||||
GrayCardinal |
|
|||
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 2 Всего: 58 |
Xenon,
Ага. А код ? Если не в хейдер, а вынести ? Извините, конечно... Доку почитаю... Только _не сейчас_ ![]() ![]() |
|||
|
||||
Xenon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: 11 Всего: 50 |
GrayCardinal, Ну тогда придется либо явно воплощаться, либо использовать export, но это почти никем не поддерживается ... Поэтому рекомендуется объявлть и определять класс и его члены в одном модуле.
ЗЫ. Если вынести код в том же модуле, то все будет нормально. К тому же Oleg_Ci уже привел пример ![]() Это сообщение отредактировал(а) Xenon - 15.2.2007, 19:35 |
|||
|
||||
nickless |
|
|||
![]() Гентозавр ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2976 Регистрация: 29.8.2005 Где: Germany Репутация: 19 Всего: 181 |
Можно еще 2 хедера использовать, один для объявления всего, а другой для реализации шаблонов, компилятору без разницы, а файлы поменьше будут
-------------------- ![]() Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies - Linus Torvalds |
|||
|
||||
GrayCardinal |
|
|||
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 2 Всего: 58 |
Xenon,
Oleg_Ci, говоришь ? Ах, вот оно что ... угум (рука придерживающая веко отпадает, глазик закрывается... все спасибо, до завтра, парни ![]() |
|||
|
||||
Xenon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: 11 Всего: 50 |
nickless, так это же будет разделенением на интерфейс и реализацию, а это 2 уже две единицы компиляции ?
|
|||
|
||||
HappyLife |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 17.5.2006 Репутация: 3 Всего: 8 |
Для люблю типа, можешь еще заюзать, функцию принимающую много параметров.
|
|||
|
||||
nickless |
|
|||
![]() Гентозавр ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2976 Регистрация: 29.8.2005 Где: Germany Репутация: 19 Всего: 181 |
Xenon, нет, я имею ввиду типа этого:
Просто хедер на 2 части разделить, а то не люблю я хедеры на несколько сотен строк ![]() -------------------- ![]() Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies - Linus Torvalds |
|||
|
||||
GrayCardinal |
|
|||
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 2 Всего: 58 |
Тоже вариант ![]() Добавлено @ 04:50 PS. уберите нафиг шапки ! а то реклама редхета какая-то :-( |
|||
|
||||
V.A.KeRneL |
|
|||
![]() Vadim A. Kazantsev ![]() ![]() Профиль Группа: Участник Сообщений: 291 Регистрация: 3.12.2006 Где: Moscow, Russia Репутация: 1 Всего: 14 |
Угу, точняк! ![]() -------------------- «C'est un pense-creux d'ici. C'est le meilleur et le plus irascible homme du monde...» © Ф.М. Достоевский, «Бесы» ---/)/)---(\.../)---(\(\ --(':'=)---(=';'=)---(=':') (")(")..)-(").--.(")-(..(")(") |
|||
|
||||
GrayCardinal |
|
|||
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 2 Всего: 58 |
V.A.KeRneL,
Во-во ![]() ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |