0Pricing
C++ Academy · Lesson

API Versioning and ABI Stability

Plan for semantic versioning and protect ABI stability across releases.

Two Different Compatibilities

Two compatibility concerns:

  • API compatibility — source code that compiles against version N also compiles against N+1
  • ABI compatibility — binaries compiled against version N work with version N+1 without recompiling

Why ABI Matters

ABI compatibility lets shared libraries be upgraded without recompiling dependents. Critical for distributions, plugins, and long-lived applications.

All lessons in this course

  1. Header-Only vs Compiled Libraries
  2. API Versioning and ABI Stability
  3. Hiding Implementation with PIMPL
  4. Writing a Modern Header-Only Utility Library
← Back to C++ Academy