[C++] Szablon klasy jako typ elementu tablicy vector

0

Witam

Mam pytanie dotyczące tworzenia tablicy vector. W programie mam zdefiniowana klase o nazwie Klasa1. Dla potrzeb programu tworze szablon klasy:

 
template <class typ>                        
class Obiekt{      
      public:
             string nazwa;
             typ obiekt_wlasciwy;
      };

Następnie chciałbym zadeklarować tablicę:

vector<Obiekt<Klasa1>> ListaObiektow;

No i niestety tutaj pojawia się błąd przy kompilacji: 'ListaObiektow' undeclared (first use this function)
oraz: >>' should be > >' within a nested template argument list

Deklaracja funkcjonuje poprawnie, gdy nie ma w niej deklaracji szablonu, tzn:

                      
class Obiekt{      
      public:
             string nazwa;
             Klasa1 obiekt_wlasciwy;
      };

vector<Obiekt> ListaObiektow;

Jednak w programie mam wiele klas Klasa1,Klasa2 itd i dlatego chciałbym stworzyć szablon klasy i go wykorzystać zamiast pisać wielu klas jak Obiekt1, Obiekt2 i zastepowac tylko w nich jedno slowko typu. Czy istnieje zatem możliwość zrobienia tego, a dokładniej - poprawnego zadeklarowania tablicy ListaObiektow jak w pierwszym przykładzie?

Z góry dzięki za pomoc.

0
vector<Obiekt<Klasa1> > ListaObiektow; // zwróć uwagę na odstęp 
0

Rzeczywiście, teraz działa. Nie pomyślałbym, że spacja może tu zrobić jakąkolwiek różnicę. A to takie proste było heh, dzieki!

0

a przecież ci napisało:
>>' should be > >' within a nested template argument list

1 użytkowników online, w tym zalogowanych: 0, gości: 1