在decltype的参数是一个变量或者常量时
使用decltype必须赋值,否则报错
#include <iostream>
using namespace std;
int main()
{
const int c = 0;
decltype(c) m = 66.66;
cout<<m<<endl;
return 0;
}
使用decltype必须赋值,否则报错
特殊情况
当在decltype的参数是一个表达式(计算式)【指针类型也可以】可以不用赋值
当括号里是decltype(* p) x = c等等带有星号的非计算的必须要赋值(将变量赋予它),因为* p是解引用类型,
当括号里是赋值语句时那么要给x赋值,而且需要是变量
注意:这里的c前面不用加&了
还有很多情况就不一一列举啦