#include <iostream>
#include <sstream>
using namespace std;
template<class T>
string toString( T&t){
ostringstream os;
os<<t;
return os.str();
}
int main(){
string a=toString(996);
return 0;
}
然后

clion报错的意思就是说,这个int型数字996无法取地址,c++无法对一个常量取地址,除非在T前面加一个const,这个时候编译器会把996这个数字放到寄存器里边,相当于
const int a=996;
const T&t=a;
然后取引用
解决方法:


博客讲述了在C++中使用模板函数将整数转换为字符串时遇到的编译错误,原因是C++不允许对常量取地址。解决方案是在模板参数前添加`const`关键字,使数值被当作常量处理。通过这种方式,可以成功将整数转换为字符串。
1064

被折叠的 条评论
为什么被折叠?



