c# - C# 中的通用阶乘函数

标签 c# generics

我想在 C# 中编写一个通用函数来计算阶乘...例如:

 static T Factorial<T>(T n)
        {
            if (n <= 1)
                return 1;

            return Factorial<T>(n - 1);
        }

但显然有限制,我们不能对类型 'T' 执行操作。还有其他选择吗?

最佳答案

问题是泛型不支持运算符,因为它们是静态方法,而不是接口(interface)的一部分。但是,您可能会使用 Generic Operators ,可在 Miscellaneous Utility Library 中找到.

关于c# - C# 中的通用阶乘函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2410340/

相关文章:

c# - 无效的对象名称 SQL 选择

c# - 需要来自 WebBrowser 控件的 HTTP 状态(200/500/等)代码

c# - 使用不寻常的规则格式化十进制值

java - 在 Java 中扩展 T 和 SomeInterface<T>

c++ - 在 Swift 中使用 C++ 模板

c# - 错误映射数据类型 Oracle 和 C#

c# - 如何在 LINQ Join 中使用 AND 运算符

Java:在此设计中使用泛型的替代方案是什么?

c# - 如何将通过反射获得的对象传递给模板?

c# - Sqlite 一对多关系