Overview
Explore safe and effective C++ class design in this comprehensive conference talk. Learn about the Rule of Zero, Rule of Five, and Rule of Six, and understand when to apply or deviate from these principles. Discover the implications of move semantics, noexcept, and constexpr introduced in C++11 and later versions. Examine the pros and cons of using virtual member functions, final keyword, and class hierarchies. Gain insights into creating value classes, handling primitive types, and dealing with integral promotions. Investigate various class types, including regular, empty, and polymorphic classes, as well as adapters and iterators. Understand the complexities of inheritance and receive guidance on navigating expert territory in C++ programming. Acquire practical tips for writing safer, more maintainable C++ code in both application-level and safety-critical systems.
Syllabus
Intro
Safety Critical Systems
Regular
Other types
Sane
Not a number
Loops
Integral Promotions
Primitive Types
unsigned and ins
check pattern
different types
default constructor
weightcounter
empty classes
iterate attacks
emptybase
Equality
Adapters
Pointing Types
Iterators
No pointers
Inheritance
The Table
My Recommendation
Polymorphic Classes
Conclusion
Taught by
NDC Conferences