Erreurs du compilateur C2200 à C2299
Les articles de cette section de la documentation décrivent un sous-ensemble de messages d’erreur générés par le compilateur.
Important
Les compilateurs et outils de génération Visual Studio peuvent signaler de nombreux types d’erreurs et d’avertissements. Une fois qu’une erreur ou un avertissement a été détecté, les outils de génération peuvent faire des hypothèses sur l’intention du code, et tenter de poursuivre leur tâche, pour signaler un plus grand nombre de problèmes en même temps. Si les outils suivent une hypothèse incorrecte, les erreurs ou avertissements ultérieurs peuvent ne pas s'appliquer à votre projet. Lors de la résolution de problèmes dans votre projet, démarrez toujours par la première erreur ou le premier avertissement signalé et effectuez régulièrement une régénération. Un seul correctif peut permettre d’éliminer de nombreuses erreurs à venir.
Pour obtenir de l’aide sur un message de diagnostic particulier dans Visual Studio, sélectionnez-le dans la fenêtre Sortie, puis appuyez sur la touche F1. Visual Studio ouvre la page de documentation relative à cette erreur, le cas échéant. Vous pouvez également utiliser l’outil de recherche en haut de la page pour rechercher des articles sur des erreurs ou des avertissements spécifiques. Vous pouvez également parcourir la liste des erreurs et des avertissements par outil et par type dans la table des matières de cette page.
Remarque
Les erreurs et les avertissements Visual Studio ne sont pas documentés en totalité. Dans de nombreux cas, le message de diagnostic fournit toutes les informations disponibles. Si vous êtes arrivé sur cette page quand vous avez utilisé F1, et si vous pensez que le message d’erreur ou d’avertissement nécessite une explication supplémentaire, faites-le nous savoir. Vous pouvez utiliser les boutons de commentaires de cette page pour signaler un problème de documentation sur GitHub. Si vous pensez que l’erreur ou l’avertissement est incorrect, ou si vous avez trouvé un autre problème relatif à l’ensemble d’outils, signalez un problème de produit sur le site Developer Community. Vous pouvez également envoyer des commentaires et entrer des bogues dans l’IDE. Dans Visual Studio, accédez à la barre de menus, puis choisissez Aide > Envoyer des commentaires > Signaler un problème, ou envoyez une suggestion via Aide > Envoyer des commentaires > Envoyer une suggestion. Certaines rubriques d’erreur du compilateur qui ne sont pas émises par le compilateur ont été créées et redirigent maintenant vers cette page à la place.
Vous trouverez peut-être une aide supplémentaire sur les erreurs et les avertissements dans les forums de Q&A Microsoft Learn. Vous pouvez également rechercher le numéro d’erreur ou d’avertissement sur le site Developer Community de Visual Studio C++. Vous pouvez également effectuer des recherches sur Stack Overflow pour trouver des solutions.
Pour obtenir des liens vers d’autres ressources d’aide et de communauté, consultez Aide et communauté Visual C++.
Messages d’erreur
Erreur | Message |
---|---|
Erreur du compilateur C2200 | 'function' : fonction déjà définie |
Erreur du compilateur C2201 | 'identifier' : doit avoir une liaison externe pour pouvoir être importé/exporté |
Erreur du compilateur C2202 | 'function' : les chemins de contrôle ne retournent pas tous une valeur |
Erreur du compilateur C2203 | l'opérateur delete ne peut pas spécifier de limites pour un tableau |
Erreur du compilateur C2204 | 'type' : définition de type rencontrée entre les parenthèses |
Erreur du compilateur C2205 | 'identifier' : impossible d’initialiser des variables extern avec une portée bloc |
Erreur du compilateur C2206 | 'function' : typedef ne peut pas être utilisé pour la définition d’une fonction |
Erreur du compilateur C2207 | 'member' : un membre d’un modèle de classe ne peut pas acquérir un type de fonction |
Erreur du compilateur C2208 | 'type' : aucun membre défini à l’aide de ce type |
Erreur du compilateur C2209 | 'identifier' : les alias ne peuvent pas être utilisés dans des déclarations de constructeurs |
Erreur du compilateur C2210 | 'identifier' : impossible d’utiliser les expansions de package comme arguments à des paramètres non packagés dans les modèles d’alias |
Erreur du compilateur C2211 | Un destructeur non virtuel dans une classe ref dérivée d'une classe ref avec un destructeur public doit également être public |
Erreur du compilateur C2212 | 'identifier' : __based non disponible pour les pointeurs vers des fonctions |
Erreur du compilateur C2213 | 'identifier' : argument non conforme pour __based |
Erreur du compilateur C2214 | pointeurs basés sur 'void' nécessitent l’utilisation de :> |
Erreur du compilateur C2215 | 'keyword' ne peut pas s’utiliser avec '/arch:SSE' |
Erreur du compilateur C2216 | 'keyword1' ne peut pas s’utiliser avec 'keyword2' |
Erreur du compilateur C2217 | 'attribute1' nécessite 'attribute2' |
Erreur du compilateur C2218 | 'calltype' ne peut pas s’utiliser avec '/arch:IA32' |
Erreur du compilateur C2219 | erreur de syntaxe : le qualificateur de type doit figurer après '*' |
Erreur du compilateur C2220 | avertissement traité comme erreur : aucun fichier 'filetype' généré |
Erreur du compilateur C2221 | Obsolète. |
Erreur du compilateur C2222 | type inattendu 'type' : une classe ou un membre de base était attendu |
Erreur du compilateur C2223 | la partie gauche de '->identifier' doit pointer vers un struct/union |
Erreur du compilateur C2224 | la gauche de '.identifier' doit être de type struct/union |
Erreur du compilateur C2225 | Obsolète. |
Erreur du compilateur C2226 | erreur de syntaxe : type inattendu 'type' |
Erreur du compilateur C2227 | la partie gauche de '->identifier' doit pointer vers un type class/struct/union/generic |
Erreur du compilateur C2228 | la partie gauche de '.identifier' doit avoir un class/struct/union |
Erreur du compilateur C2229 | class/struct/union 'type' a un tableau de taille zéro non conforme |
Erreur du compilateur C2230 | module 'name' introuvable |
Erreur du compilateur C2231 | '.identifier' : l’opérande gauche pointe vers 'class/struct/union', utilisez '->' |
Erreur du compilateur C2232 | '->identifier' : l’opérande gauche a le type 'class/struct/union', utilisez '.' |
Erreur du compilateur C2233 | 'identifier' : les tableaux d’objets contenant des tableaux d’indice zéro ne sont pas conformes |
Erreur du compilateur C2234 | 'identifier' : les tableaux de références ne sont pas conformes |
Erreur du compilateur C2235 | Obsolète. |
Erreur du compilateur C2236 | jeton 'token' inattendu. N'auriez-vous pas oublié un ';' ? |
Erreur du compilateur C2237 | plusieurs déclarations de module |
Erreur du compilateur C2238 | jetons inattendus avant 'token' |
Erreur du compilateur C2239 | 'function' : tentative de suppression d’une fonction __declspec(dllexport) |
Erreur du compilateur C2240 | Obsolète. |
Erreur du compilateur C2241 | 'identifier' : accès au membre restreint |
Erreur du compilateur C2242 | nom de typedef impossible après un class/struct/union |
Erreur du compilateur C2243 | 'conversion_type' : la conversion de 'type1' en 'type2' existe, mais n’est pas accessible |
Erreur du compilateur C2244 | 'identifier' : impossible de faire correspondre la définition de fonction avec une déclaration existante |
Erreur du compilateur C2245 | fonction membre 'function' inexistante spécifiée en tant que friend (la signature de la fonction membre ne correspond à aucune surcharge) |
Erreur du compilateur C2246 | 'identifier' : données membres static non conformes dans une classe définie localement |
Erreur du compilateur C2247 | 'identifier' non accessible, car 'class1' utilise 'specifier' pour hériter de 'class2' |
Erreur du compilateur C2248 | « identificateur » : impossible d’accéder à accessibilité membre déclaré dans la classe « classe » |
Erreur du compilateur C2249 | « identificateur » : aucun chemin accessible vers accessibilité membre déclaré dans la base virtuelle « classe » |
Erreur du compilateur C2250 | 'identifier' : héritage ambigu de class::member' |
Erreur du compilateur C2251 | L’espace de noms 'namespace' n’a pas de membre 'identifier' - Voulez-vous utiliser 'member' ? |
Erreur du compilateur C2252 | l’instanciation explicite d’un modèle peut se faire uniquement dans la portée espace de noms |
Erreur du compilateur C2253 | 'function' : spécificateur pure ou spécificateur de substitution abstrait uniquement autorisé sur une fonction virtuelle |
Erreur du compilateur C2254 | 'function' : spécificateur pure ou spécificateur de substitution abstrait non autorisé sur une fonction friend |
Erreur du compilateur C2255 | 'element' : non autorisé en dehors d’une définition de classe |
Erreur du compilateur C2256 | utilisation non conforme du spécificateur friend sur 'function' |
Erreur du compilateur C2257 | 'specifier' : spécificateur non autorisé dans le type de retour de fin |
Erreur du compilateur C2258 | syntaxe pure non conforme, doit être '= 0' |
Erreur du compilateur C2259 | 'class' : impossible d’instancier une classe abstraite |
Erreur du compilateur C2260 | 'specifier' : spécificateur d’assembly friend InternalsVisibleToAttribute non valide |
Erreur du compilateur C2261 | 'string' : la référence d’assembly n’est pas valide et ne peut pas être résolue |
Erreur du compilateur C2262 | 'specifier' : aucune version, culture ou architecture de processeur ne peut être spécifiée pour les déclarations InternalsVisibleTo |
Erreur du compilateur C2263 | Obsolète. |
Erreur du compilateur C2264 | 'function' : erreur dans la définition ou la déclaration de la fonction ; fonction non appelée |
Erreur du compilateur C2265 | Obsolète. |
Erreur du compilateur C2266 | 'identifier' : la référence à un tableau à limite non constante n’est pas conforme |
Erreur du compilateur C2267 | 'function' : les fonctions static avec portée de bloc ne sont pas conformes |
Erreur du compilateur C2268 | 'function' est une fonction d’assistance de bibliothèque prédéfinie du compilateur. Les fonctions d’assistance de bibliothèque ne sont pas prises en charge avec /GL ; compilez le fichier objet 'filename' sans /GL. |
Erreur du compilateur C2269 | impossible de créer un pointeur ou une référence vers un type de fonction qualifié (nécessite un pointeur vers membre) |
Erreur du compilateur C2270 | 'function' : modificateurs non autorisés sur les fonctions non membres |
Erreur du compilateur C2271 | 'function' : new/delete ne peut pas comporter de modificateurs de listes formelles |
Erreur du compilateur C2272 | 'function' : modificateurs non autorisés sur les fonctions membres static |
Erreur du compilateur C2273 | 'type' : non conforme à droite de l'opérateur '->' |
Erreur du compilateur C2274 | 'type' : non conforme à droite de l'opérateur '.' |
Erreur du compilateur C2275 | 'type' : utilisation non conforme de ce type comme expression |
Erreur du compilateur C2276 | 'operator' : opération non conforme sur l’expression d’une fonction membre liée |
Erreur du compilateur C2277 | 'function' : impossible de récupérer l’adresse de cette fonction membre |
Erreur du compilateur C2278 | Obsolète. |
Erreur du compilateur C2279 | la spécification de l’exception ne peut pas s’afficher dans une déclaration typedef |
Erreur du compilateur C2280 | 'class::function' : tentative de référencement d’une fonction supprimée |
Erreur du compilateur C2281 | 'class::function' : une fonction peut uniquement être supprimée sur la première déclaration |
Erreur du compilateur C2282 | 'function1' ne peut pas remplacer 'function2' |
Erreur du compilateur C2283 | 'identifer' : spécificateur pure ou spécificateur de substitution abstrait non autorisé sur un class/struct sans nom |
Erreur du compilateur C2284 | 'function' : argument non conforme d'une fonction intrinsèque, paramètre number |
Erreur du compilateur C2285 | la représentation des pointeurs vers des membres a déjà été déterminée - pragma ignoré |
Erreur du compilateur C2286 | Les pointeurs vers les membres de la représentation 'identifier' sont déjà définis sur inheritance - déclaration ignorée |
Erreur du compilateur C2287 | 'identifier' : représentation d’héritage : 'inheritance' est moins général que le 'inheritance' requis |
Erreur du compilateur C2288 | Obsolète. |
Erreur du compilateur C2289 | même qualificateur de type utilisé plusieurs fois |
Erreur du compilateur C2290 | Syntaxe C++ asm ignorée. Utilisez __asm. |
Erreur du compilateur C2291 | Un espace de noms anonyme ne peut pas être exporté. |
Erreur du compilateur C2292 | 'identifier' : meilleure représentation d’héritage de cas : inheritance1' déclaré mais 'inheritance2' requis |
Erreur du compilateur C2293 | 'identifier' : une variable membre ne peut pas être un spécificateur __based |
Erreur du compilateur C2294 | ne peut pas exporter le symbole 'identifier' car il a une liaison interne |
Erreur du compilateur C2295 | séquence d’échappement 'character' : non conforme dans une définition de macro |
Erreur du compilateur C2296 | 'operator' : non conforme, l’opérande gauche a le type 'type' |
Erreur du compilateur C2297 | 'operator' : non conforme, l’opérande droit a le type 'type' |
Erreur du compilateur C2298 | appel manquant pour lier le pointeur à la fonction membre |
Erreur du compilateur C2299 | 'function' : changement de comportement : une spécialisation explicite ne peut pas être un constructeur de copie ou un opérateur d’assignation de copie |
Voir aussi
Erreurs et avertissements du compilateur C/C++ et des outils de génération
Erreurs du compilateur C2001 – C3999, C7000 – C7999