undefined reference - problem z szablonami
Ostatnio zmodyfikowano 2013-11-03 10:17
kubek3898 Temat założony przez niniejszego użytkownika |
undefined reference - problem z szablonami » 2013-11-03 10:13:18 Witam, mam problem taki sam jak pekfos w tym temacie -> http://cpp0x.pl/forum/temat/?id=3781, jednak nie chcę umieszczać ciała metody w pliku nagłówkowym, ze względu na jej wielkość. W Pasji C++, Grębosz pisze o tym, lecz podaje rozwiązanie tylko dla IDE Borland C++, a ja używam Code Blocks. Czy ktoś wie, jak można powiedzieć linkerowi w CB, by "zręcznie" generował szablony? Podaję kod ilustrujący moją sytuację: Klasa.h namespace ob { template < class T = int > class Klasa { T x; T y; public: Klasa( T x, T y ); Klasa(); }; }
Klasa.cpp template < class T > ob::Klasa < T >::Klasa( T x, T y ) { this->x = x; this->y = y; }
template < class T > ob::Klasa < T >::Klasa() { this->x = 0; this->y = 0; }
|
|
Monika90 |
» 2013-11-03 10:17:53 Musisz z góry znać wszystkie typy z którymi będzie używany szablon i dla każdego typu w pliku cpp dodać: template class ob::Klasa < int >; template class ob::Klasa < float >; template class ob::Klasa < double >;
|
|
« 1 » |