以下内容如下:
double &number = 12.4;
它应该将对double类型的变量的引用赋值为12.4
但不是对变量指针地址的引用。它为什么有效?
double & Getsomenumber()
{
static double number = 12.4;
double &anotherNumber = number;
return anotherNumber;}
答案 0 :(得分:3)
这是非法语法,C中没有引用。
如果您的意思是C ++,那么这也是无效的,您无法将临时工具绑定到非const
引用。 const double& number = 12.4
可行。
所以“它为什么有用?”这不是一个有效的问题 - 它不是,不适用于C,不适用于C ++。
但不是对变量指针地址的引用
没有。引用只是一个别名 - 您基本上是通过不同的名称引用相同的变量。
答案 1 :(得分:0)
你在做什么应该以这种方式工作:
const double& number = 12.4;
实际上,您不应该在没有const
的情况下创建对const表达式的引用。