Re[3]: template static methods
От: hramovnik  
Дата: 16.10.09 11:23
Оценка:
Здравствуйте, anagaf, Вы писали:

A>Здравствуйте, denisko, Вы писали:


D>>1) Может ты шаблон вынес в cpp


A>Да, в начальном сообщении была ошибка. Tester::test() определена в cpp, как:


A>
A>template <class Object> bool Tester::test( Object obj)
A>{
A>    return obj != 0;
A>}
A>


A>Ты это имел ввиду? Что криминального в таком определении?


A>Если прописать прямо в h:


A>
A>template <class Object> static bool test( Object obj) {return obj != 0;}
A>


A>все работает


//file: test.h
/*...*/
template <class Object> 
class CTest
{
public:
    static bool test( Object obj);
/*...*/
}
/*...*/


//file: test.cpp
/*...*/
template <class Object>
bool Tester::test( Object obj)
{
    return obj != 0;
}
/*...*/


Попробуй так, если хочешь разделить объявление и опредиление.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.