Hi. Zaczne moze od przykladowego kodu:
template <class T>
class stos{
struct wezel{
T* wskobj;
wezel* next;
wezel():wskobj(NULL),next(NULL){}
};
friend void funk (void);
};
template <class T>
void funk(void)
{
//stos<T>::wezel *bla;
}
Mamy szablon klasy, w nim zagniezdzona inna klase( a wlaciwie strukture, ale to nieistotne) i funkcje zaprzyjazniona. Moje pytanie brzmi: jak w tej funkcji zaprzyjaznionej stworzyc obiekt klasy zagniezdzonej? Zakomentowany sposob znalazlem w Pasji C++ J.Grebosza. Dla zwyklych klas jest w porzadku, ale przy szablonach nie dziala, dostaje blad:`bla' undeclared (first use this function)
kompilowalem w dev c++ 4.9.9.2 i gcc pod linuxem. Probowalem rowniez kompilowac przyklad dolaczony do Pasji C++ dotyczacy m.in. tego tematu( dostepny tu: http://chall.ifj.edu.pl/~grebosz/pasja_przyklady_wrzes2004.zip przykl_12_03_str300.cpp), ten sam blad. Wg autora, program ten dziala pod gcc i VC++(niestety nie mam mozliwosci sprawdzenia VC++). Czy ktos ma jakis pomysl co z tym zrobic?
pozdrawiam, dzieki