decltype用于函数指针类型

来源:互联网 发布:c语言log2函数 编辑:程序博客网 时间:2024/05/17 23:11

有时候会遇到这种情况:希望从表达式的类型推断出要定义的变量的类型,但是又不想用该表达式的值初始化变量.c++11新标准引入了第二种类型说明符decltype,它的作用是选择并返回操作数的数据类型.在此过程中,编译器分析表达式并得到它的类型,却不实际计算表达式的值:

decltype(f()) sum = x; //sum的类型就是函数f的返回类型

若是:

decltype(sumLength) *getFcn(const string &);

sumLength为函数,因此getFcn返回的类型与sumLength函数类型相同而并不是sumLength的函数指针。

原创粉丝点击