Qt C++ aggregate 'std:: stringstream ss' a un type incomplet et ne peut pas être défini
j'ai cette fonction dans mon programme qui convertit des entiers en chaînes:
QString Stats_Manager::convertInt(int num)
{
stringstream ss;
ss << num;
return ss.str();
}
Mais quand je l'exécute j'obtiens l'erreur:
aggregate 'std::stringstream ss' has incomplete type and cannot be defined
Je ne suis pas vraiment sûr de ce que cela signifie. Mais si vous maintenant comment le corriger ou besoin de plus de code s'il vous plaît juste commentaire. Grâce.
73
demandé sur
tyty5949
2012-08-01 05:40:00
2 réponses
vous avez probablement une déclaration forward de la classe, mais n'avez pas inclus l'en-tête:
#include <sstream>
//...
QString Stats_Manager::convertInt(int num)
{
std::stringstream ss; // <-- also note namespace qualification
ss << num;
return ss.str();
}
119
répondu
Luchian Grigore
2012-08-01 01:46:11
comme c'est écrit là-haut, vous oubliez de taper #include <sstream>
#include <sstream>
using namespace std;
QString Stats_Manager::convertInt(int num)
{
stringstream ss;
ss << num;
return ss.str();
}
vous pouvez également utiliser d'autres moyens pour convertir int
en string
, comme
char numstr[21]; // enough to hold all numbers up to 64-bits
sprintf(numstr, "%d", age);
result = name + numstr;
vérifier ce!
4
répondu
booiljoung
2017-05-23 12:18:10