2009-12-06 2 views

Antwort

19
Table(string name="", vector <string> mods); 

wenn Sie wollen Vektor innerhalb Konstruktor leer sein, dann

mods.clear(); 

oder

mods.swap(vector<string>()); 

Falls Sie als Standardparameter:

Table(string name="", vector<string> mods = vector<string>()); 

Wie jeder anderer Standardparameter

+0

Ahh danke! Ich habe versucht, Dinge wie Vektor Mods (0, "") und viele andere Variationen. Hätte das gar nicht erraten! – Omar

+0

Ihre Nachricht gefangen, bevor Sie es bearbeitet, funktioniert diese Methode Vektor Mods = Vektor () und nur Vektor mods = vector() beschwert sich über ein Template Argument. Ich bin froh, dass ich die erste Nachricht sah, weil ich wahrscheinlich nicht herausgefunden hätte, das Template-Argument in beiden Seiten der Aufgabe zu setzen. – Omar

+0

Entschuldigung, es wurde nicht richtig formatiert. –

8

auf die andere Antwort hinzuzufügen: Wenn Sie c verwenden ++ 11, können Sie die Universal-Initialisierung Syntax verwenden, können die Standard-Parameterdeklaration für einen Vektor der folgenden abzukürzen:

Table(string name="", vector<string> mods={}); 
+0

viel besser als andere Optionen. – dani

Verwandte Themen