CS 246E - Object Oriented Software Development (Enriched)

Notes by Joshua Liu

Instructor: Brad Lushman

Table of Contents

  1. Program Input/Output
  2. Linear Collections and Modularity
  3. Linear Collections and Memory Management
  4. Copies
  5. Moves
  6. I want a constant vector
  7. Tampering
  8. Efficient Iteration
  9. Staying in bounds
  10. But I wanted a vector of chars :(
  11. Better Initialization
  12. I want a vector of Posns
  13. Less Copying!
  14. Memory management is hard!
  15. Is vector exception-safe?
  16. Insert/remove in the middle
  17. Abstraction over Containers
  18. Heterogeneous Data
  19. I'm Leaking!
  20. I want a class with no objects
  21. The copier is broken
  22. I want to know what kind of Book I have
  1. Shared Ownership
  2. Abstraction over Iterators
  3. I want an even faster vector
  4. Collecting Stats
  5. Resolving Method Overrides at Compile Time
  6. Polymorphic Cloning
  7. Logging
  8. Total Control
  9. I want total control over vectors and lists
  10. I want a fixed size object allocator
  11. I want a (tiny bit) smaller vector class