用c++设计一个阶乘类recursion,重载调用运算符,计算一个正整数的阶乘
时间: 2023-05-23 13:03:39 浏览: 148
C++设计程序,求数的阶乘
以下是代码实现:
```c
#include<stdio.h>
class Factorial {
public:
int operator()(int n) const {
if (n == 0 || n == 1)
return 1;
else
return n * (*this)(n - 1); //重载调用运算符
}
};
int main() {
Factorial factorial;
printf("5! = %d\n", factorial(5)); //输出 5! 的值
return 0;
}
```
注意到这里我们是用类重载调用运算符,实现了对正整数的阶乘的递归,输出结果为:
```
5! = 120
```
阅读全文