Running the snippet below we can see that, even in release, a simple use of std::bind and std::function with a struct leads to *ten* calls to the copy constructor of that structure !Such hidden performance penalty hit was very surprising to me. For example, GCC 4.6 with the same code generate only one call to the copy constructor (for std::bind) then one call to the move constructor (for std::function), which is the expected behavior.
Visual Studio/Silverlight/Tooling version
What category (if any) best represents this feedback?
Steps to reproduce
Operating System Language