namespace bug
-
Hi,
folgender Code läuft nicht im VS2010. Ist die Fehlermeldung begründet oder wirklich nur ein Bug (läuft @Ideone, @VS12 weiß ich nicht):namespace N1 { namespace N2 { } } int main() { using namespace N1; using namespace N1::N2; auto asd = []() { }; }error C2871: 'N2': Es ist kein Namespace mit diesem Namen vorhanden
VS frisst den Code, wenn ich
using namespace N1::N2; using namespace N1;schreibe (is einigermaßen einleuchtend)
aber auch wenn ich den Lambda Ausdruck so verändere (nicht einleuchtend):auto asd = [](void) { };Edit: Funktioniert auch, wenn man die namespaces nicht innerhalb einer Funktion ausschüttet.
greetz KN4CK3R
-
Müsste es nicht
using namespace N1; using namespace N2;sein?
-
hatte ich probiert, aber dann kommt die Meldung dass er N2 nicht findet
greetz KN4CK3R
-
-
VS10 hat mit den Namespaces so seine Probleme ab und zu, vor Allem wenn Lambdas im Spiel sind

-
also doch ein bug. hab die beiden usings jetzt außerhalb der funktion stehen, stört da nicht weiter.
greetz KN4CK3R
-
Lambdas sind in VS 2010 genau wie auto eben nur Features. Mit VS 2012 gibt es keine Probleme.