Wenn eine Funktion erwartet wird, Parameter eines Containertypen akzeptieren (oder alles, was implizit durch ein initializer_list
initialisiert werden kann, wieEclipse-CODAN Unterstützung für C++ 11 Initialisiererliste als Funktionsparameter
void someFunc(std::vector<int> args);
Und in die anrufende Seite, wird im folgenden Code als errornous markiert
someFunc({1,2,3});
die eclipse CDT-Parser (auch bekannt als CODAN) hält den Funktionsaufruf als invalid arguments
und die CDT-Version ist bereits spätestens ein (8.8.1).
Gibt es eine Problemumgehung, um den Fehler zu unterdrücken? Es ist keine gute Lösung, die ganze Gruppe von ungültigen Argument Fällen zu unterdrücken.
ops, das ist unordentlicher – Fei
Messy, aber sicher. Der Compiler sollte Fehler finden. – rsjaffe
FWIW, 'static_cast' funktionierte nicht für mich (Kodan mochte es nicht und' gcc 5.4' auch nicht. C-Style-Cast funktionierte jedoch, wie zum Beispiel: 'someFunc ((static_cast>) {1,2,3}); ' –
BeeOnRope