C++函数可以返回多种类型,大致可分4种:
- 返回void(无返回值);
- 返回对象(内置类型对象和自定义对象);
- 返回指针(普通指针和函数指针);
- 返回引用;
1.返回void(无返回值)
void f()
{
//默认的return;
}
2.返回对象(内置类型对象和自定义对象)
int f()
{
return 1;
}
class A{
};
A f3()
{
A a;
return a;
}
3.返回指针(普通指针和函数指针)
1>.返回普通指针
int * f4(int *p)
{
return p;
}
2>.返回函数指针
int Max_(int i,int j)
{
return i>=j?i:j;
}
typedef int (*PF)(int,int);//声明PF是一个函数指针
PF f(int a)
{
cout<< a <<endl;
return Max_;
}
int main()
{
PF pf;
pf = fun(100);
int max=pf(5,8);
cout<<"max = "<<max <<endl;
}
4.返回引用
int& f(int &i)
{
return i;
}
千万不要返回局部对象或变量的引用和指针。因为变量具有作用域,局部对象,局部变量的指针和局部变量的引用作用域在函数内,函数执行完他的生命期就结束了,这样再返回他就会出现错误。