filmov
tv
CppCon 2017: Nicolai Josuttis “The Nightmare of Move Semantics for Trivial Classes”
![preview_player](https://i.ytimg.com/vi/PNRju6_yn3o/maxresdefault.jpg)
Показать описание
—
—
Assume, we implement a very simple class having just multiple string members. Even ordinary application programmer prefer to make it simple and fast.
You think you know how to do it? Well beware! It can become a lot harder than you initially might assume.
So, let’s look at a trivial class with multiple string members and use live coding to see the effect using different implementation approaches (using constructors passing by value, by reference, by perfect forwarding, or doing more sophisticated tricks).
Sooner than later we will fall into the deep darkness of universal/forwarding references, enable_if, type traits, and concepts.
—
Nicolai Josuttis: IT Communication
—
*-----*
*-----*
—
Assume, we implement a very simple class having just multiple string members. Even ordinary application programmer prefer to make it simple and fast.
You think you know how to do it? Well beware! It can become a lot harder than you initially might assume.
So, let’s look at a trivial class with multiple string members and use live coding to see the effect using different implementation approaches (using constructors passing by value, by reference, by perfect forwarding, or doing more sophisticated tricks).
Sooner than later we will fall into the deep darkness of universal/forwarding references, enable_if, type traits, and concepts.
—
Nicolai Josuttis: IT Communication
—
*-----*
*-----*
CppCon 2017: Nicolai Josuttis “The Nightmare of Move Semantics for Trivial Classes”
CppCon 2017: Nicolai Josuttis “C++ Templates Revised”
CppCon 2018: Nicolai Josuttis “The Nightmare of Initialization in C++”
The Hidden Secrets of Move Semantics - Nicolai Josuttis - CppCon 2020
Back to Basics: Move Semantics - Nicolai Josuttis - CppCon 2021
Nicolai Josuttis — C++17 — the biggest traps
C++17, part 1: The Language Features - Nicolai Josuttis
CppCon 2017: Nicholas Ormrod “Fantastic Algorithms and Where To Find Them”
CppCon 2017: Billy Baker “Almost Unlimited Modern C++ in Kernel-Mode Applications”
C++17: The Language Features - Nicolai Josuttis
Back to Basics: Templates in C++ - Nicolai Josuttis - CppCon 2022
CppCon 2017: Odin Holmes “Agent based class design”
C++17 part 2: The Library Features - Nicolai Josuttis
C++17: The Library Features - Nicolai Josuttis
CppCon 2017: Jon Cohen “A Type, by Any Other Name”
CppCon 2017: Michael Caisse “Practical Patterns with the Networking TS”
CppCon 2017: Ingve Vormestrand “Tools and Techniques To Stay Up-to-date With Modern C++”
Nicolai Josuttis: The Price of Shared Pointers or Why Passing them by-reference can be Useful
CppCon 2017: Dietmar Kühl “C++17 Parallel Algorithms”
CppCon 2017: Panel “Grill the Committee”
CppCon 2017: Lars Knoll “Qt as a C++ Framework: History, Present State and Future”
C++17 in Practice - The good and the ugly - Nicolai Josuttis
CppCon 2017: John Regehr “Undefined Behavior in 2017 (part 1 of 2)”
CppCon 2017: John Lakos “Local ('Arena') Memory Allocators (part 1 of 2)”
Комментарии