3 conseils pour l'utilisation de modèles en C ++

Un modèle de fonction vous permet d'écrire quelque chose qui ressemble à une fonction mais utilise un ou plusieurs titulaires de type C ++ qui se transforme en un vrai type à la compilation. Vous devez vous rappeler quelques petites choses lors de l'utilisation des modèles.

  1. Tout d'abord, aucun code est généré pour un modèle. (Code est généré après le modèle est convertie en fonction d'une classe ou le béton.) Ceci implique qu'un .cpp fichier source est presque jamais associé à un modèle de classe.




    La totalité de la définition de modèle de classe, y compris toutes les fonctions de membres, sont généralement contenues dans un fichier d'inclusion afin qu'il puisse être disponible pour le compilateur pour l'extension.

  2. Deuxièmement, un modèle de classe ne consomme pas de mémoire. Par conséquent, il n'y a pas de pénalité pour la création de modèles de classe si elles ne sont jamais instanciés. D'autre part, un modèle de classe utilise de la mémoire à chaque fois qu'il est instancié. Ainsi, le code pour Tableau consomme de la mémoire, même si Tableau existe déjà.

  3. Enfin, un modèle de classe ne peut pas être compilé et vérifié pour les erreurs jusqu'à ce qu'il se transforme en une véritable classe. Ainsi, un programme qui référence le modèle de classe Tableau pourrait compiler même si Tableau contient des erreurs de syntaxe évidentes. Les erreurs remporté # 8242-t apparaît jusqu'à ce qu'une classe telle que Tableau ou Tableau a été crée.

La création d'une fonction à partir d'un modèle est appelée instanciation le modèle.


» » » » 3 conseils pour l'utilisation de modèles en C ++