Das Problem mit dieser Konfiguration besteht darin, dass Sie zumindest in C ++ 03 keinen lokalen Funktor als Vorlageargument verwenden können, da keine externe Verknüpfung vorhanden ist. Dies bedeutet, dass der oben genannte Code technisch gesehen nicht legal ist. Allerdings beheben sie dies in C ++ 0x, da es eine ziemlich dumme Einschränkung ist, und da VS2010 rudimentäre C ++ 0x-Unterstützung hat, ist der obige Code völlig in Ordnung.
Kurz gesagt, die Antwort auf Ihre Frage ist, dass nichts falsch daran ist, wenn Sie C ++ 0x-kompatible Compiler verwenden, aber ansonsten sollten Sie dies unterlassen, um die Cross-Compiler-Kompatibilität zu maximieren.
>In beiden Fällen sollten Sie also eine andere Lösung verwenden.
Tags und Links c++ visual-studio-2010