Overview
Explore an approach to handling reference types in generic programming through this comprehensive CppNow conference talk. Delve into the challenges of using reference and proxy types with generic data structures, examining real-world cases where higher-level generic code seemingly requires their use. Investigate the expected semantics in such scenarios and discover how to develop future data structures that work with both Regular objects and reference/proxy types without compromising existing semantics. Participate in discussions on topics including Regular types, Elements of Programming, generic data structure requirements, parameter passing, and optimization techniques. Gain insights from Matt Calabrese, a software engineer at Google and Boost Steering Committee member, as he presents controversial yet constructive ideas for library developers working with C++.
Syllabus
Introduction
Purpose
Regular Types
Elements of Programming
Default Construction
Syntax Requirements
Semantics of Equality
Assignment
Semantics
Destruction
Not Regular
Generic Programming
Generic Data Structures
Requirements
Parameter Passing
Formatting
Callable
Coarse grained
Fine grained
Variant design
Destroy Assignment
Optimize Assignment
Feature Request
Naive Approach
Taught by
CppNow