我们可以在 C# 中的方法内部创建方法吗?

作者 : 慕源网 本文共1157个字,预计阅读时间需要3分钟 发布时间: 2021-12-6 共309人阅读

在用 C# 编写代码或学习编程中的方法时,您可能想知道我们是否可以在 C# 的另一个方法中创建一个方法。在这篇博客中,我将讨论如何在 C# 程序的另一个方法中创建一个方法。

介绍

在另一个方法中创建一个方法在 C# 中称为局部函数。
  1. 在另一个方法中使用一个方法可以使代码更易于阅读。局部函数就像 lamda 表达式。
  2. 局部函数是一种私有方法。
  3. 我们可以在方法、构造函数、匿名方法、lambda 表达式和其他局部函数中声明局部函数。
  4. 我们可以将本地函数编写为泛型。
  5. 我们可以在定位函数中使用 out 和 ref 参数。
  6. 我们可以在局部函数中使用参数。
  7. 我们可以在一个方法中创建多个局部函数。
  8. 本地函数不允许访问修饰符
局部函数语法
<modifiers> <return-type> <method-name> <parameter-list>

示例 1:多个局部函数

下面的示例提供了我们可以创建多个局部函数的信息。这里 Main 是方法,在里面我们创建了SumSubMul局部函数。

using System;  
namespace LocalFunctions  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            Console.WriteLine($"Sum: {Sum(10, 20)}");  
            Console.WriteLine($"Sub: {Sub(10, 20)}");  
            Console.WriteLine($"Mul: {Mul(10, 20)}");  
            Console.WriteLine($"Sum: {Sum(5, 15)}");  
  
            int Sum(int a, int b)  
            {  
                return a + b;  
            }  
            int Sub(int a, int b)  
            {  
                return a - b;  
            }  
            int Mul(int a, int b)  
            {  
                return a * b;  
            }  
            Console.ReadKey();  
        }  
    }  
}   
输出
Sum: 30
Sub: -10
Mul: 200
Sum: 20

示例 1 – 通用局部函数

以下示例提供了有关如何创建通用局部函数的信息。在这个代码片段中,我们有带有泛型的局部函数。

using System;  
namespace LocalFunctions  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            Display<int>(Sum(10, 20));  
            Display<string>("Local Functions Demo");  
  
            void Display<T>(T value)  
            {  
                Console.WriteLine("Value is: " + value);  
            }  
            Console.ReadKey();  
        }  
    }  
} 
输出
Value is: 30
Value is: Local Functions Demo

这就是本博客的全部内容。感谢您阅读我的博客。 感谢您的反馈。

要了解有关局部函数的更多信息,请查看局部函数:为什么以及何时使用它们


慕源网 » 我们可以在 C# 中的方法内部创建方法吗?

常见问题FAQ

程序仅供学习研究,请勿用于非法用途,不得违反国家法律,否则后果自负,一切法律责任与本站无关。
请仔细阅读以上条款再购买,拍下即代表同意条款并遵守约定,谢谢大家支持理解!

发表评论

开通VIP 享更多特权,建议使用QQ登录