Re[3]: derived templates doesn't link in Visual C++ 6.0
От: Андрей Россия  
Дата: 12.11.01 04:15
Оценка:
Здравствуйте Аноним, Вы писали:

А>Похоже, что надо искать другое решение, без темплейтов.....


Ты смешал ДВЕ проблемы:
1. Реализация шаблонных классов и функций должна быть доступна всем файлам, в которых инстанцируются экземпляры шаблонов. Решение этой проблемы я тебе дал.
2. Твой шаблон работать не будет по той причине, что препроцессор работает раньше компилятора, и он ничего не знает о твоих шаблонах. То есть в макрос RUNTIME_CLASS передается не имя класса Event, а буквально имя параметра шаблона T, а так как макрос RUNTIME_CLASS реализован довольно просто, он присобачивает к T префикс class и пытается найти определение этого класса. Так что у тебя два пути: или искать другое решение или написать свой RUNTIME_CLASS, который бы понимал шаблоны. А виртуальные деструкторы здесь ни при чем. К тому же ты еще и порядок параметров в своем шаблоне перепутал.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.