Practical C++ Modules
summary
C++20 modules arrive with three practical migration paths: include translation, header-unit importation, or full named modules that produce a binary module interface (BMI). Measured with GCC on a six‑core laptop, turning iostream into a BMI cuts a synthetic build from about 6s to ~2s (~3× speedup). Build systems must produce and depend on BMIs (don’t distribute BMIs as a public artifact), compilers have partial, evolving support, and choose module granularity, interface/implementation units, and naming deliberately to avoid unnecessary recompilation.
AI-written summary · about
chapters (7)
- 0:00Introduction to C++ modules
- 10:40Include translation overview
- 21:20Header importation basics
- 28:28Practical module guidelines
- 39:50Module naming and structure
- 50:14When to migrate to modules
- 57:53State of tools and Q&A
related talks
01h 07mBuilding C++ Modules
59mC++ Modules
58mKnockin' on Header's Door: An Overview of C++ Modules
34mPractical C++20 Modules and the future of tooling around C++ Modules
01h 28m2024 Update: C++ Modules - C++ Developers Get Started Today!
32mVisibility, Reachability, Linkage – The Three Secret Spices of C++ Modules
01h 11mA Practical Introduction to C++20's Modules
01h 00mSo, you want to use C++ Modules ... cross-platform?
