首页  >  文章  >  后端开发  >  C# 局部函数

C# 局部函数

PHPz
PHPz原创
2024-09-03 15:14:58891浏览

在另一个函数体内的函数是私有的,其范围仅限于创建它的函数,在 C# 中称为本地函数,使用它可以在另一个方法体内声明一个方法,该方法是已经定义,并且此本地函数功能是在 C# 版本 7.0 中在 C# 中引入的。并且在另一个函数体内创建的函数的类型与创建该函数的函数的类型相同,并且此类局部函数可以由其容器的成员调用,并且允许创建多个局部函数但不允许在局部函数中使用 static 关键字。

语法:

语法如下:

<modifiers: async | unsafe> <return-type> <method-name> <parameter-list>
  • 其中 async 和 unsafe 是可以与本地方法一起使用的修饰符。
  • 返回类型是方法返回值的类型。
  • 方法名称是赋予方法的名称。
  • 参数列表是可以传递给方法的参数列表。

C# 中局部函数的工作

  • 局部函数是私有函数,可以在另一个函数体内声明,并且此类局部函数的范围仅限于创建它的函数。
  • 本地函数可以从终结器、lambda 表达式、属性评估器、构造函数等调用。
  • 局部函数中不能使用访问修饰符和 static 关键字,甚至修饰符 private 也是如此,因为局部函数默认是私有的。
  • 在容器方法内部定义并包含方法参数的局部变量可以使用局部函数访问。
  • 属性不能应用于局部函数或其参数和参数类型。
  • 修饰符 unsafe 和 async 可以与本地函数一起使用。

示例

下面给出的是提到的示例:

示例#1

C# 程序,演示程序中将两个数字相加的本地函数。

代码:

using System;
//a class called check is defined
namespace LocalFunction
{
public class Program
{
// Main method is called
public static void Main(string[] args)
{
// the local methods are being called within the main method
int res = Addition(100, 200);
Console.WriteLine("The addition result of adding 100 and 200 is: {0}", +res);
//local method is created
int Addition(int x, int y)
{
return x + y;
}
}
}
}

输出:

C# 局部函数

在上面的程序中,定义了一个名为check的类。然后调用 main 方法,其中定义了本地方法。然后调用在 main 方法中创建的本地方法,并将要相加的两个数字作为参数传递给本地方法。

示例#2

用于演示程序中本地函数的 C# 程序。

代码:

using System;
//a class called program is called
namespace LocalFunction
{
public class Program
{
//main method is called
public static void Main(string[] args)
{
//Local Function is created
int Function(int x)
{
return 100 * x;
}
//Calling the local function within the main method
Console.WriteLine("The product after performing the operation is: {0}",Function(10));
}
}
}

输出:

C# 局部函数

在上面的程序中,定义了一个名为program的类。然后调用 main 方法,其中定义了本地方法,该方法用于查找数字与 100 相乘后的乘积,并作为参数传递。然后调用在 main 方法中创建的本地方法,并使用一个数字来调用该数字,该数字与 100 相乘后的乘积作为参数传递给本地方法。

示例#3

C# 程序,用于演示程序中求数字平方的局部函数。

代码:

using System;
//a class called program is called
namespace LocalFunction
{
public class Program
{
//main method is called
public static void Main(string[] args)
{
//Local Function is created
int Square(int x)
{
return x * x;
}
//Calling the local function within the main method
Console.WriteLine("The square after performing the operation is: {0}",Square(10));
}
}
}

输出:

C# 局部函数

在上面的程序中,定义了一个名为program的类。然后调用 main 方法,其中定义了查找作为参数传递的数字的平方的本地方法。然后调用在 main 方法中创建的本地方法,并使用一个要求平方的数字作为参数传递给本地方法。

以上是C# 局部函数的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
上一篇:C# Anonymous Functions下一篇:Enum in C#