filmov
tv
CppCon 2018: Greg Falcon “Initialization, Shutdown, and constexpr”

Показать описание
—
—
It's easy to create an access a global object in C++, but doing so correctly and safely is unfortunately a bit tricky. But why?
This talk will take a close look at the various rules that govern when an object is safe to access, including storage duration, object lifetime, initialization, and program termination. We'll look at some safe idioms for creating global singletons that are justified by these rules. And we'll look at the relevant, helpful features added in various revisions of C++, such as constexpr constructors, and how they make the situation better.
—
Greg Falcon
Staff Software Engineer, Google
Greg Falcon is a Staff Software Engineer at Google, working on the Abseil C++ library.
—
*-----*
*-----*
—
It's easy to create an access a global object in C++, but doing so correctly and safely is unfortunately a bit tricky. But why?
This talk will take a close look at the various rules that govern when an object is safe to access, including storage duration, object lifetime, initialization, and program termination. We'll look at some safe idioms for creating global singletons that are justified by these rules. And we'll look at the relevant, helpful features added in various revisions of C++, such as constexpr constructors, and how they make the situation better.
—
Greg Falcon
Staff Software Engineer, Google
Greg Falcon is a Staff Software Engineer at Google, working on the Abseil C++ library.
—
*-----*
*-----*
CppCon 2018: Greg Falcon “Initialization, Shutdown, and constexpr”
CppCon 2018: Andreas Weis “Fixing Two-Phase Initialization”
CppCon 2018: Ben Deane “Easy to Use, Hard to Misuse: Declarative Style in C++”
Zero-Overhead Compiler Pessimization - Chuck Wilcox [ CppCon 2018 ]
Overloading: The Bane of All Higher-Order Functions - Simon Brand [ CppCon 2018 ]
CppCon 2018: Geoffrey Romer “What do you mean 'thread-safe'?”
CppCon 2018: Takatoshi Kondo “Wandbox: Online programming language testing environment”
CppCon 2018: Andrew Sutton “Concepts in 60: Everything you need to know and nothing you don't”...
CppCon 2018: CJ Johnson “Constexpr and operator overloading: Why everything is terrible”
CppCon 2018: Staffan Tjernström “Almost Always Avoiding auto”
CppCon 2018: Fred Tingaud “A Little Order: Delving into the STL sorting algorithms”
CppCon 2018: Odin Holmes “Concurrency Challenges of Interrupt Service Routines”
CppCon 2018: Anastasia Kazakova “Talk to me! The art of reporting a bug (and handling the feedback)”...
Especially nasty bug in our network scanner - Martin Šmarda [ CppCon 2018 ]
CppCon 2018: Borislav Stanimirov “DynaMix: A New Take on Polymorphism”
Meta++: Language Support for Advanced Generative Programming - Andrew Sutton - CppCon 2019
CppCon 2018: Alan Talbot “Moving Faster: Everyday efficiency in modern C++”
Greg Falcon
Initialization and Shutdown Techniques
CppCon 2015: B. Geller & A. Sermersheim 'Compile-Time Counter Using Template & Constexp...
Initialization in modern C++ - Timur Doumler - Meeting C++ 2018
CppCon 2018: Damien Buhl “C++ Everywhere with WebAssembly”
Static Initialisation in C++
CppCon 2018: Bob Steagall “Fancy Pointers for Fun and Profit”
Комментарии