Move Semantics,Perfect Forwarding, and Rvalue references
From a performance perspective, the most important new feature in C++0x is move semantics, which makes it possible for compilers to replace costly object-copying operations with less expensive "state movement" operations. This session explains what move semantics is, how it affects program performance, and how programmers can control it. It also examines another new C++0x feature, perfect forwarding, because effective use of move semantics takes advantage of it. Finally, it takes a close look a third new C++0x feature, rvalue references, because that's the foundation on which both move semantics and perfect forwarding are built.
All three features explored in this talk are available in current compilers from major vendors (e.g., Gnu and Microsoft), so C++ developers will be able to put the information in this presentation to immediate use.
Kevlin Henney & Jon Jagger's Deliberate Practice Days
How do you develop expertise? Peter Norvig writes: "The key is deliberative practice: not just doing it again and again, but challenging yourself with a task that is just beyond your current ability, trying it, analysing your performance while and after doing it, and correcting any mistakes. Then repeat. And repeat again." For a developer, deliberate practice means trying new things, trying old things with a view to making them fresh and trying to move from accidental practice to intentional discipline. Deliberate practice improves technical agility through increased self awareness. Find out more here
ABOUT SCOTT MEYERS
Scott Meyers is one of the world's foremost authorities on C++. He wrote the best-selling Effective C++ series (Effective C++, More Effective C++, and Effective STL) and recently published training materials on C++0x and on using C++ in embedded syst
More about Scott Meyers
PODCAST MOVE SEMANTICS,PERFECT FORWARDING, AND RVALUE REFERENCES
This session took part at the ACCU 2011. You can view the other 14 podcasts here.