int i = 0; decltype((i)) d; 上述语句是有错误的,因为变量d没有被初始化。原因是decltype((i))的结果是一个引用,"()"将i变成一个表达式,其结果相当于i的一个引用,因此d需要被初始化。