Outils pour utilisateurs

Outils du site


lang:cpp:template

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
lang:cpp:template [2024/02/21 15:18] – [Séparer le code source des fonctions et leur définition dans une classe template] : correction de "Exemple avec une fonction template" rootlang:cpp:template [2025/02/05 10:07] (Version actuelle) – [const Args...] : fix typo root
Ligne 29: Ligne 29:
  
 <code cpp> <code cpp>
-typename<template ...Args>+template<typename ...Args>
 void f(const Args&&... args){} void f(const Args&&... args){}
  
Ligne 380: Ligne 380:
 template void A<int>::f(short u); template void A<int>::f(short u);
 </file> </file>
 +
 +  * Messages d'erreur
 +
 +''error: specialization of XXX after instantiation''
 +
 +''error: explicit specialization of XXX after instantiation''
 +
 +''error C2908: explicit specialization; XXX has already been instantiated''
 +
 +Il ne faut pas utiliser une classe spécialisée avant qu'elle ne soit définie.
 +
 +<code cpp>
 +template <typename T>
 +class A {};
 +
 +// Doit être défini après la spécialisation.
 +A<int> a;
 +
 +template <>
 +class A<int> {};
 +</code>
 ====Afficher en string le type template==== ====Afficher en string le type template====
 <code cpp> <code cpp>
lang/cpp/template.1708525132.txt.gz · Dernière modification : 2024/02/21 15:18 de root