آیا میتوان داخل متد،متد دیگری تعریف کرد؟

سه شنبه ۱۵ تیر ۱۴۰۰

96

3

آیا میتوان داخل متد،متد دیگری تعریف کرد؟

هنگام نوشتن کد در C # یا یادگیری روش های برنامه نویسی ، ممکن است این سال برای شما پیش بیاید که آیا میتوان داخل متد،متد دیگری تعریف کرد؟ در این وبلاگ ، من یک مثال میزنم  که چگونه می توانیم یک آیا میتوان داخل متد،متد

دیگری تعریف کرد؟ در C # ایجاد کنیم.


معرفی

 

ایجاد یک متد در  درون خود ان متد در  C # توابع محلی نامیده می شود.

استفاده از روشی در داخل روش دیگر خواندن کد را آسان می کند. توابع محلی دقیقاً مانند عبارات لامدا است.

عملکرد محلی یک روش خصوصی است. ما می توانیم توابع محلی را در داخل روش ها ، سازنده ها ، روش های ناشناس ، عبارات lambda و سایر توابع محلی اعلام کنیم. ما می توانیم یک عملکرد محلی را به عنوان عمومی بنویسیم. ما می

توانیم از پارامترهای خارج و Ref در توابع مکان استفاده کنیم. ما می توانیم از توابع محلی از پارامها استفاده کنیم. ما می توانیم چندین توابع محلی را در داخل یک روش ایجاد کنیم. توابع محلی اصلاح کننده های دسترسی را مجاز نمی دانند

نحو عملکرد محلی

<نوع محلی> <نوع بازگشت> <متد نام> <لیست پارامتر>

<modifiers> <return-type> <method-name> <parameter-list>

مثال  اول :

 

در زیر مثال اطلاعاتی را ارائه می دهد که می تواند چندین عملکرد محلی ایجاد کند. در اینجا Main متدی است که در داخل آن توابع محلی Sum ، Sub ، Mul را ایجاد کرده ایم.

 

کد

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

توابع محلی عمومی یا Generic Local Functions

مثال 2

مثال زیر اطلاعاتی را در مورد چگونگی ایجاد توابع مکان عمومی ارائه می دهد. در این قطعه کد ، ما توابع محلی با مواد عمومی داریم. :

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();  
        }  
    }  
}  
//MajidGorgin.ir

خروجی :

Value is: 30
Value is: Local Functions Demo

 

برای کسب اطلاعات بیشتر در مورد عملکردهای محلی ، عملکردهای محلی را بررسی کنید: چرا و چه وقت از آنها استفاده کنید