Skip to content
Free public beta until December 4, 2026: every course is open, no card needed. After that, the first chapter of each course stays free and full access is a one-time $39 ($19 for up to 100 founding members chosen for helpful feedback). Your progress is kept. How the beta works

one definition rule

Each function or variable may be defined once in the whole program.

The ODR requires exactly one definition of each non-inline function and variable across the program, and identical definitions of each class, template, and inline function in every translation unit that uses them. Breaking the cross-file part is often not diagnosed.

Read the full section →