long indeed(int); decltype (indeed(3)) m; m是什么型啊?long还是int?

long indeed(int);

decltype (indeed(3)) m;   

m是什么型啊?long还是int?

xungeer29
浏览 1339回答 1
1回答

onemoo

long。decltype 会得到后面括号中“内容”的类型(以及值类别),括号中可以是表达式。你这里的表达式就是函数调用表达式。函数调用表达式的类型就是函数返回类型,而且像这样返回类型非引用的会被视为右值。函数调用表达式的类型与函数参数无关。decltype 在推导右值类型时就会得到原始类型。所以最终推导出的类型是 long
打开App,查看更多内容
随时随地看视频慕课网APP