1. 递归介绍
C++函数有一种有趣的特点————可以调用自己(然而,与C语言不同的是,C++不允许main()调用自己),这种功能被称为递归。尽管递归在特定的编程(例如人工智能)中是一种重要的工具,在这里简单介绍一下 它是如何工作的。
如果递归函数调用自己,则被调用的函数也将调用自己,这将无限循环下去,除非代码中包含终止调用链的内容。通常的方法将递归调用放在if语句中。
2. 一个例子
#include <iostream>
void countdown(int n);
int main(int argc, char const *argv[])
{
countdown(4);
return 0;
}
void countdown(int n)
{
using namespace std;
cout << "Counting down ... " << n << endl;
if ( n > 0 )
countdown(n-1);
cout << n <<": Kaboom!\n";
}