Sie können eine innere Template-Klasse innerhalb einer normalen Klasse deklarieren und den definierten Typ als jeden anderen deklarierten Typ verwenden.Forward-Deklaration der Vorlagenklasse innerhalb der Vorlagenklasse
Wenn nun Outer selbst eine Vorlagenklasse ist, gibt es eine Möglichkeit, die Deklaration von Inner außerhalb der Äußerung von Outer zu halten? Etwas wie:
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 {};
Gibt es eine korrekte Syntax, um Outer mit den richtigen Vorlagenparametern zu deklarieren?
Oh Gott, es war so offensichtlich ... Danke für die Antwort :) – Louen
@Louen Sie sind willkommen. :) –