#ifndef _S_
#define _S_
template< class T >class S
{
T a;
public:
S(){a = 1;};
T f();
};
#endif // _S_
Вопрос по шаблонам и заголовычным файлам.
Код:
Реализация функции template< class T >T S< T >::f(); вынесена в файл Test.cpp:
Код:
#include "stdafx.h"
#include "Test.h"
template< class T >T S< T >::f()
{
return a;
}
#include "Test.h"
template< class T >T S< T >::f()
{
return a;
}
Код:
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
S< float > s;
std::cout<<s.f();
return 0;
}
int _tmain(int argc, _TCHAR* argv[])
{
S< float > s;
std::cout<<s.f();
return 0;
}
нельзя выностить реализацию шаблонов в отдельный CPP.
За подробностями в поиск.
Цитата:
Originally posted by Green
Уж сколько раз твердили Миру...
нельзя выностить реализацию шаблонов в отдельный CPP.
За подробностями в поиск.
Уж сколько раз твердили Миру...
нельзя выностить реализацию шаблонов в отдельный CPP.
За подробностями в поиск.
Спасибо :)