È possibile inoltrare una classe interna del modello all'interno di una classe normale e utilizzare il tipo definito come qualsiasi altro tipo di inoltro dichiarato.Dichiarazione di inoltro della classe template nidificata all'interno della classe modello
class Outer {
template <int N> class Inner;
typedef Inner<0> Inner0;
Inner0* f();
};
template<int N>
class Outer::Inner {};
Ora, se esterno è di per sé una classe template, c'è un modo per ottenere la dichiarazione di interno al di fuori della dichiarazione di esterno? Qualcosa di simile:
template<typename T>
class Outer {
template <int N> class Inner;
typedef Inner<0> Inner0;
Inner0* f();
};
template<typename T, int N> //This won't work
class Outer<T>::Inner {};
Esiste una sintassi corretta per dichiarare Outer con i giusti parametri del modello?
Oh dio, era così ovvio ... Grazie per la risposta :) – Louen
@Louen Siete i benvenuti. :) –