C++函数分为两种:有返回值和无返回值的。这里将分别介绍这两种函数类型。
1、有返回值类型
有返回值的函数会在函数结尾返回一个值,这个值可以赋值给其他变量,也可以放在表达式当中使用。例如,C++标准库中有一个sqrt()函数,它返回平方根,假设要计算6.25的平方根,并将值赋值给变量x,则可以使用下面的语句:
x=sqrt(6.25);
表达式将调用sqrt()函数,并返回一个值,这个值将赋给变量x,这就是有返回值函数的用法,接下来讲一下如何定义一个有返回值类型的函数。
举个例子,假如我想写一个函数,这个函数计算两个double类型数值的和。
首先,我们要确定函数返回值的类型,由于两个值都是double类型的,那么返回值也应该用double类型,然后再给函数命名,这里我们就写Sum吧,接下来,就是填写形参列表,形参列表是函数外部用来传递参数给函数的,因此我们应该确定参数的个数和类型,这里需要两个double类型的形参变量,最后在来写函数的实现方法。
#include<iostream>
using namespace std;
double Sum(double a,double b)
{
double result=a+b;
return result;
}
2、无返回值类型函数
无返回值类型的函数在有些语言中被称为过程,但是在C和C++中,这里的两类函数类型都被称为函数。无返回值类型函数不会返回值,也就是在结尾没有return语句。知道函数的定义,那么我们该了解如何调用这种无返回值函数了。一般这种无返回值函数是单独成句的,通过函数名和传递相应的实参进行调用,例如这里有一个void simon(int a)函数,应该这样调用:
simon(25);
这样即可完成调用。因为无返回值函数没有返回值,因此不能用在给变量赋值和表达式当中。这就是两种函数的介绍。
3、函数变体
另外还有一些函数不接受如何参数。例如,有一个C库包含的一个rand()函数,该函数不接受任何参数,并会随机返回一个整数值,该函数的原型如下:int rand(void).关键字void明确指出,该函数不接受任何参数,如果去掉void关键字,则C++将其解释为一个不接受任何参数的隐式声明。注意,在C++中函数调用必须包括括号,即使没有参数。