Comment convertir un int en string en C++ ? (conversion d'un entier en chaîne)
Bonjour, collègues ! Je suis débutant en C++ et j'ai rencontré une tâche apparemment simple : je dois convertir un entier (int) en chaîne (std::string). Dans d'autres langages, comme Python ou Java, cela se fait avec une seule fonction intégrée. Mais en C++, je suis confus.
Le problème survient dans le code suivant :
```cpp
#include
#include
int main() {
int number = 42;
std::string text = "Réponse : " + number; // Erreur !
std::cout << text << std::endl;
return 0;
}
```
Le compilateur génère une erreur : "invalid operands to binary expression ('std::string' and 'int')". Je comprends que C++ est fortement typé et qu'on ne peut pas simplement additionner une chaîne et un nombre. Mais comment faire correctement ? J'ai entendu parler de fonctions comme `itoa()`, `sprintf()`, `stringstream` et `std::to_string()`. Qu'est-ce qui est actuellement pertinent en C++ moderne (C++11 et plus récent) ? Quelle est la méthode la plus simple et la plus sûre pour un débutant ? Idéalement avec un exemple de code que je peux directement insérer dans mon projet.