Overview
Explore the intricacies of passing non-trivial objects by value in C++ functions through this conference talk from C++Now 2024. Delve into the challenges of copy and move constructor calls, and discover techniques for achieving zero-overhead pass-by-value, even when using invocable abstractions like std::function. Learn why library-level abstractions typically incur additional copy/move overhead and how to circumvent this limitation. Examine extreme examples that demonstrate the potential for optimization, including passing lock_guard objects by value through function objects. Gain insights from Filipp Gelman, a Bloomberg LP developer known for pushing the boundaries of C++ language features, as he presents innovative approaches to enhancing performance in C++ code.
Syllabus
C++ Zero Overhead Pass by Value Through Invocable C++ Abstractions - Filipp Gelman - C++Now 2024
Taught by
CppNow