Ok, è una domanda idiota, ma proprio non riesco a capire come fare, ho composto una classe template da un'altra classe template, ora ho bisogno che questa classe sia friend della seconda per poter accedere ai dati private, vi posto il codice e datemi qualche dritta grazie! 
codice:
#ifndef ELEMENTO_H
#define ELEMENTO_H
template <class T>
class Elemento
{
friend class Lista; //Sicuramente sbagliato
private:
T val;
Elemento<T> *succ;
public:
Elemento (T);
};
template <class T>
Elemento <T>::Elemento (T v)
: val (v), succ (0)
{
}
#endif
classe composta da elemento:
codice:
#ifndef LISTA_H
#define LISTA_H
#include "Elemento.h"
template <class T>
class Lista
{
private:
Elemento<T> *testa;
Elemento<T> *coda;
public:
Lista ();
void aggiungiInTesta (T);
};
template <class T>
Lista<T>::Lista ()
: testa (0), coda (0)
{
}
template <class T>
void Lista<T>::aggiungiInTesta (T v)
{
Elemento<T> *elem = new Elemento<T> (v);
elem->succ = testa;
if (!testa)
coda = elem;
testa = elem;
}
#endif