Como converter int para string em C++? (conversão de número inteiro para string)
Olá, colegas! Sou novo em C++ e me deparei com uma tarefa aparentemente simples: preciso converter um número inteiro (int) para uma string (std::string). Em outras linguagens, como Python ou Java, isso é feito com uma única função embutida. Mas em C++ fiquei confuso.
O problema ocorre no seguinte código:
```cpp
#include
#include
int main() {
int number = 42;
std::string text = "Resposta: " + number; // Erro!
std::cout << text << std::endl;
return 0;
}
```
O compilador gera um erro: "invalid operands to binary expression ('std::string' and 'int')". Eu entendo que C++ é fortemente tipado e não se pode simplesmente concatenar uma string com um número. Mas como fazer isso corretamente? Ouvi falar de funções como `itoa()`, `sprintf()`, `stringstream` e `std::to_string()`. Qual delas é relevante no C++ moderno (C++11 e posteriores)? Qual é a maneira mais simples e segura para um iniciante? De preferência com um exemplo de código que eu possa inserir diretamente no meu programa.