我编写了这段代码[1],但是给了我警告信息[2],实际上我想在double中设置int的地址。我只是想知道用ref做那是否可以保存(我不会遇到奇怪的行为)。
[2]
test.cc:10:27:警告:缩小{myint'从'int'转换为'double'的内部{} [-Wnarrowing] const double& intref {myint};
[1]
int main(){
int myint{10};
cout<<"myint: "<<myint<<endl;
const double &intref{myint};
cout<<"intref: "<<intref<<endl;
}
答案 0 :(得分:0)
double&
必须引用双精度,myint
不是双精度数。您实际上正构建一个临时双精度并为临时构建const double&
。