Maison >développement back-end >C++ >Pourquoi g (MinGW) signale-t-il « to_string introuvable dans std » et comment puis-je y remédier ?

Pourquoi g (MinGW) signale-t-il « to_string introuvable dans std » et comment puis-je y remédier ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-23 18:13:17724parcourir

Why Does g   (MinGW) Report

to_string introuvable dans std, dit g (Mingw)

Énoncé du problème

Quand compiler un programme C qui utilise std::to_string() avec g (MinGW 4.7.0), le compilateur génère une erreur indiquant "to_string n'est pas membre de std."

Cause

Il s'agit d'un bug connu dans les versions MinGW antérieures à GCC 4.8.0, en particulier avec le mode standard C 0x.

Solution

Là Il existe deux solutions principales à ce problème :

1. Appliquer un correctif

Visitez le rapport de bug fourni sur Bugzilla (lien dans la réponse fournie) et téléchargez le correctif pour mettre à jour MinGW. Installez le patch et recompilez votre programme.

2. Utilisez une distribution MinGW mise à jour

Utilisez une distribution MinGW prenant en charge les versions GCC supérieures à 4.8.0. Les distributions suivantes sont connues pour avoir résolu ce problème :

  • MinGW-w64 (versions supérieures à 4.8.0)
  • Nuwen MinGW

Installez le mise à jour de la distribution MinGW et compilation à nouveau de votre programme.

Supplémentaire Notes

  • La fonction to_string() fait partie de la norme C 11, qui est activée par l'indicateur -std=c 0x dans g .
  • Versions MinGW antérieures à 4.8.0 ont une prise en charge incomplète des fonctionnalités C 11.
  • Pour les versions MinGW inférieures à 4.8.0, vous devrez peut-être utilisez une méthode alternative pour convertir des entiers longs en chaînes, telle que sprintf(), strftime() ou boost::lexical_cast.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn