Si vous avez codé en langage C sur des projets suffisamment importants, il est probable que vous ayez ressenti plus d'une fois le besoin de disposer d'une fonction pouvant recevoir un nombre variable d'arguments, dans le style des fonctions standards de la famille de printf(). Ce qui induit d'avoir recours aux macros comme va_start() ou va_arg() pour obtenir les paramètres effectivement passés, pratique généralement considérée comme délicate et source infinie de problèmes divers, entre autres du fait du laxisme relatif du langage C vis-à-vis des types de données.
Si vous avez plutôt pratiqué le C++, la surcharge permet le plus souvent de se passer de ce genre de techniques, avec le bénéfice non négligeable d'avoir une information beaucoup plus complète et fiable sur les types des paramètres. Par ailleurs, le C++ est un langage à tiroirs : la simple existence des patrons (templates) induit tout un ensemble de possibilités conduisant à une véritable...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première