2016-03-24 10 views
0

Ich habe die folgende Vorlage-Struktur erstellt, wobei der zweite Vorlagenparameter ein Vorlagevorlagenparameter ist. Ich möchte es als Rückgabetyp einer Funktion der plötzlichen Struktur verwenden.Verwenden Sie Vorlagenparameter als Rückgabetyp der Klassenfunktion

template<typename T, template<typename /*T*/, typename /*U*/> typename V> 
struct MyStruct 
{ 
    V myFunction(); 
} 

Ich versuchte V zurückkehren, aber es funktioniert offensichtlich nicht. Ich habe dann versucht, V<T, U> zurückgeben, aber es funktioniert auch nicht. Sollte ich den Parameter U als dritten Template-Parameter von MyStruct deklarieren oder gibt es eine andere Möglichkeit zu tun, was ich tun möchte?

Antwort

1

Sie vermissen die Argumentliste von V. Sie können V<T, U> myFunction(); jedoch nicht wie erwähnt verwenden. Wenn Sie U oder etwas anderes verwenden möchten, müssen Sie es hinzufügen. Zum Beispiel:

Verwandte Themen