Overview
Syllabus
Intro
A 30 Year Tale
What are we doing wrong?
When does efficiency matter?
Writing optimal code
Compiler optimizations
Caches • Many of us grew up with simple architectures
Dynamic allocation
Static allocation
Registers
Embedded objects
Sharing space
Pass by value
Pass by const reference
Pass by non-const reference
Passing vector by value
Passing vector by r-value reference
Passing vector by non-const reference
Return by value
Return rules
Return Examples - Bad
Moving a string
Perfect Forwarding
Add - A Case Study
Container Choice
Vector vs. Array vs. C-array
List vs. Vector
List vs. Deque vs. Vector
Set/Map vs. Vector
Set vs. Vector
Taught by
CppNow