Ich schreibe gerade ein kleines Projekt, das ich vor einiger Zeit geschrieben habe, und ersetze Funktionszeiger mit std::function
und lambdas.
Dabei stolperte ich über ein Problem mit for-Schleifen in Lambdas. in Visual Studio 2010 (mit SP1) generiert seltsame Fehler, wenn For-Schleifen innerhalb von Lambdas verwendet werden, wenn das Lambda im Dateibereich definiert ist:
%Vor%folgendes Snippet kompiliert jedoch gut:
%Vor%Beide Snippets kompilieren mit MinGW GCC 4.7.
Hat jemand anderes dieses Verhalten auch beobachtet? Ist das ein Fehler in der Lambda-Implementierung von Visual Studio? Kennen Sie Workarounds?
Bearbeiten:
Fehlerbericht auf Microsoft Connect:
Ссылка
Ich kann dieses Verhalten in Visual Studio 2010 RTM überprüfen. Es scheint nur auf Schleifen beschränkt zu sein, da die folgenden Kompilierungen gut funktionieren.
%Vor%Ich würde Microsoft definitiv auf dieses Problem hinweisen, indem ich einen Fehler bei connect einreiche
Hinweis: Ich weiß nicht 100%, ob dies ein Fehler ist, aber Beweis legt nahe, dass es
istTags und Links c++ visual-studio-2010 gcc visual-studio c++11