我的程序中有一个将整数转换为字符串的函数:
QString Stats_Manager::convertInt(int num)
{
stringstream ss;
ss << num;
return ss.str();
}
但是每当我运行这个命令时,我都会得到这样的错误:
aggregate 'std::stringstream ss' has incomplete type and cannot be defined
我不太确定那是什么意思。但如果你知道如何修复它或需要更多的代码,请只需评论。谢谢。
发布于 2012-08-01 09:46:12
你可能有一个类的正向声明,但没有包括头:
#include <sstream>
//...
QString Stats_Manager::convertInt(int num)
{
std::stringstream ss; // <-- also note namespace qualification
ss << num;
return ss.str();
}
发布于 2012-08-01 09:50:41
就像上面写的那样,你忘了输入#include <sstream>
#include <sstream>
using namespace std;
QString Stats_Manager::convertInt(int num)
{
stringstream ss;
ss << num;
return ss.str();
}
您还可以使用其他一些方法将int
转换为string
,例如
char numstr[21]; // enough to hold all numbers up to 64-bits
sprintf(numstr, "%d", age);
result = name + numstr;
检查this!
https://stackoverflow.com/questions/11751486
复制相似问题