Scheme的标识符除了下划线以外,还可以包含“减号”。
我们在上一讲谈到了如何用define来定义变量,这一讲我们将介绍如何用define来定义过程。
用define定义过程也很简单。我们可以先举个简单的例子:
我们在上述代码中定义了一个函数incr,它带有一个参数,并且返回参数+1的值。
这里与变量定义的不同之处在于,定义过程时,我们用一个括号表达式。然后,你可以定义多个形参。
最后,在右边,再用一个括号表达式来描述这个过程针对参数做何种操作。
我们下面再举一个更复杂些的例子:
在上述代码例子中,我们首先定义了一个函数square,它接受一个参数,并且返回该参数的平方。
第二个函数定义了一个求和函数sum,这个函数带有两个参数,最后返回参数的和。
最后计算的是(10 * 10) + (100 * 100)的值。
最后再举个例子:
我们定义了一个函数even,它将参数值乘以2;定义了一个odd,它将参数值乘以2之后又加1。
然后inter是将参数经过even和odd处理后再进行相加。