expected primary-expression before '{' token
-
Hallöchen!
Bei dem untenstehenden C++-Code bekomme ich die folgende Fehlermeldung:
g++ -m32 -c xhtml11.cpp -o xhtml11.o xhtml11.cpp: In constructor `html::html(std::string, std::string)': xhtml11.cpp:5: error: expected primary-expression before '{' token make: *** [xhtml11.o] Error 1
// xhtml11.cpp #include "xhtml11.hpp" html::html(string xml_lang, string xmlns) : param_element("html", { {"xmlns", xmlns}, {"xml:lang", xml_lang} }, 2) { }
Ich vermute das liegt an der Übergabe der dynamisch erzeugten Liste. Aber was genau habe ich falsch gemacht und wie mach' ich's richtig?
-
Du kannst so eine C-Initialisierungsliste nicht als Argument an irgendwas übergeben - da benötigst du schon ein vorher definiertes Objekt (oder einen korrekten Konstruktor-Aufruf).
-
Wo ist denn param_element definiert? Fehlt vielleicht ein include?