#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;
然后取引用
解决方法: