You are forgetting C++ has modules now, and extern templates, as implementations for common type parameters.