c++14支持自动推理类型返回值 代码如下
#include<iostream>
using namespace std;
auto add(int x, int y)
{
return x + y;
}
int main(void)
{
cout << add(1, 2) << endl;
system("pause");
return 0;
}
判断有关auto返回类型是c++面试题中常出现的
虽然没怎么听懂 但还是列出来
auto go(int a, int b)->auto(*)()->int(*)(int, int(*)(int, int))
就像这一行判断go的数据类型 尹大佬说的方法是逐层分解
//auto go(int a, int b)->auto(*)()->int(*)(int, int(*)(int, int))
//int(* )(int, int(*)(int, int))
//int(* (* )() )(int, int(*)(int, int)
//int(* (* go(int a, int b) )() )(int, int(*)(int, int))
实在搞不定还可以用typeid来帮助判断返回类型 附上typeid的使用方法
#include<iostream>
using namespace std;
//判断类型的方法
auto go(int a, int b)->auto(*)()->int(*)(int, int(*)(int, int))
{
return nullptr;
}
int main(void)
{
//cout << add(1, 2) << endl;
cout << typeid(go).name() << endl;
system("pause");
return 0;
}