per quanto riguarda questo
Codice:
static unsigned int next_id=0;
se ti da errore significa che hai un comilatore non recente quindi non standardizzato.
e potresti fare in queto modo.
fuori dalla classe Element
Codice:
template<class T> unsigned int Element<T>::next_id = 0;
cosė dovresti risolvere il problema in quel punto
fammi sapere