gore |
Отправлено: 29.01.2005, 23:30 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
вот ведь какую вещь заметил:
1.
пишу cpp модуль (соотвественно два файла .h и .cpp) — внтури обычный класс
подключаю его к основному модулю как
CODE | #include "MY_FILE.h" | ну и в манагере проекта билдера он добавлен
всё работает — этотак и должно быть
2.
но вот другой пример:
пишу еще один модуль и подключаю его как обычно
в нем есть шаблон класса (CODE | template <class T> class MY_CLASS... | ),
и если в основном модуле вызывается хоть один метод из этого класса
возникает ошибка линковщика
Unresolved external 'вызываемый_метод' referenced from 'мой_файл.OBJ'
НО!
если в основном модуле место #inclide "MY_FILE.h" написать
#include "MY_FILE.cpp" всё компилируется и работает нормально
кто знает в чем дело?
может у меня где ошибка?
|
|
Doga |
Отправлено: 30.01.2005, 19:36 |
|
Мастер участка
Группа: Участник
Сообщений: 575
|
Попробуйте обьявить его как extern
|
|
Guest |
Отправлено: 30.01.2005, 21:21 |
|
Не зарегистрирован
|
QUOTE (Doga @ 30/01/2005, 20:38) | Попробуйте обьявить его как extern |
в смысле? описать шаблон-класс как extern
на такое компилятор ругается! |
|
Asher |
Отправлено: 01.02.2005, 10:33 |
|
Мастер участка
Группа: Модератор
Сообщений: 550
|
Это недоделка компиляторов. Они сейчас не поддерживают разделение шаблонов на интерфейс и реализацию
|
|
Георгий |
Отправлено: 01.02.2005, 13:52 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
QUOTE (Asher @ 01/02/2005, 11:35) | Они сейчас не поддерживают разделение шаблонов на интерфейс и реализацию |
а планируется? |
|
xTrim |
Отправлено: 01.02.2005, 14:17 |
|
Машинист паровоза
Группа: Участник
Сообщений: 208
|
Имхо если в стандарте есть, должно планироваться. а в стандарте таки есть.
|
|