Re: Компилируется, но .obj не содержит код!!!
От: Krom Россия  
Дата: 28.11.01 09:09
Оценка:
Здравствуйте Василий Сухачев, Вы писали:

ВС>Вопрос скорее к знатокам MS Visual C++.


ВС>Почему если я выношу описания классов и реализацию в отдельные файлы (например AbstractItem.h и AbstractItem.cpp для класса AbstractItem) то компиляция проходит нормально но компоновщик выдает ошибки


А, случайно, не пытаетесь разнести шаблоны:
template <class T>
class Base
и
template <class T>
class Derived : public Base<T>

на объявление в *.h и определение в *.cpp файл[ы]?

Если это так, то все верно шаблоны в VC++ должны быть объявленны и определены в одном заголовочном файле. Это связанно с тем что компилятор на их основе генерирует классы по заданному подходящему набору аргументов шаблона. И, следовательно, компилятору необходимо иметь под рукой полное определение шаблона.
Best regards
Krom
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.