C#에서 인라인 함수 만들기

  1. C#에서 Lambda 식을 사용하여 인라인 함수 생성
  2. C#에서 Lambda 문을 사용하여 인라인 함수 생성
  3. C#에서 로컬 함수를 사용하여 인라인 함수 만들기

이 자습서에서는 C#에서 인라인 함수를 만드는 방법에 대해 설명합니다.

C#에서 Lambda 식을 사용하여 인라인 함수 생성

C 및 C++와 같은 프로그래밍 언어에서 인라인 함수는 inline키워드로 선언됩니다. 인라인 함수 내부의 코드는 컴파일에 의해 함수 호출로 대체됩니다. 따라서 코드를 인라인으로 만듭니다. 불행히도 C#에서 인라인 함수를 선언하는 기본 제공 키워드가 없습니다. C#에서 람다 식을 사용하여 인라인 함수를 만들 수 있습니다. Lambda 식은 C#에서 익명 함수를 만드는 데 사용됩니다. =>키워드는 람다 식을 작성하는 데 사용됩니다.

다음 코드 예제는 C#에서 람다 식을 사용하여 인라인 함수를 만드는 방법을 보여줍니다.

using System;

namespace inline_function
{
    class Program
    {
        static void Main(string[] args)
        {
            Func<int, int, int> add = (x, y) => x + y;
            Console.WriteLine(add(1,2));
        }
    }
}

출력:

3

C#에서 람다 식을 사용하여12의 합을 반환하는 인라인 함수를 만들었습니다. =>키워드를 사용하여 두 정수 변수의 합을 반환하는add함수를 만들었습니다. Func<int, int, int>는 매개 변수의 데이터 유형을 지정하고Func<int, int, int>의 마지막int는 익명 함수의 리턴 유형을 지정합니다. Action<T1, T2>키워드를 사용하여 익명 함수를 지정할 수도 있습니다. 우리가 아무것도 반환하고 싶지 않다면. 다음 코드 예제는Action<T1, T2>키워드를 사용하여 C#에서 값을 반환하지 않는 인라인 함수를 만드는 방법을 보여줍니다.

using System;

namespace inline_function
{
    class Program
    {
        static void Main(string[] args)
        {
            Action<int, int> sum = (x, y) => Console.WriteLine(x + y);
            sum(5, 6);
        }
    }
}

출력:

11

C#에서 람다 식을 사용하여56의 합계를 반환하는 인라인 함수를 만들었습니다. =>키워드를 사용하여 두 정수 변수의 합을 반환하는sum()함수를 만들었습니다. Action<int, int>는 익명 함수 매개 변수의 데이터 유형을 지정합니다. 한 줄의 코드에만 람다 식을 사용할 수 있습니다.

C#에서 Lambda 문을 사용하여 인라인 함수 생성

코드에 한 줄 이상의 코드가있는 경우 람다 문을 사용해야합니다. Lambda 문은 인라인 함수로 사용할 수있는 익명 함수를 선언하는데도 사용됩니다. 람다 문에서 익명 함수를 선언하는 것은 람다 식과 비슷하지만 여러 줄 문이{};로 묶여 있다는 점만 다릅니다. 다음 코드 예제는 C#에서 람다 문을 사용하여 인라인 함수를 만드는 방법을 보여줍니다.

using System;

namespace inline_function
{
    class Program
    {
        static void Main(string[] args)
        {
            Action<int, int> sum = (x, y) =>
            {
                int s = x + y;
                Console.WriteLine(s);
            };
            sum(6, 7);
        }
    }
}

출력:

13

C#에서 람다 문을 사용하여67의 합계를 표시하는 인라인 함수를 만들었습니다. sum()함수 안에 여러 줄의 코드를 작성할 수 있습니다. 람다 식과 마찬가지로 람다 문에는 값을 반환하는Func<T,T-return>과 값을 반환하지 않는Action<T>의 두 가지 유형이 있습니다.

C#에서 로컬 함수를 사용하여 인라인 함수 만들기

로컬 함수는 C#의 다른 함수에 포함 된 함수입니다. 로컬 함수는이를 포함하는 함수에서만 액세스 할 수 있습니다. 로컬 함수는 7.0 이상 버전의 C#에서 사용할 수 있습니다. 로컬 함수를 사용하여 C#에서 인라인 함수의 기능을 제공 할 수 있습니다. 다음 코드 예제는 C#에서 로컬 함수를 사용하여 인라인 함수를 만드는 방법을 보여줍니다.

using System;

namespace inline_function
{
    class Program
    {
        static void Main(string[] args)
        {
            void sum(int a, int b)
            {
                Console.WriteLine(a + b);
            }
            sum(7, 11);
        }
    }
}

출력:

18

C#의 로컬 함수와 함께711의 합계를 반환하는 인라인 함수를 만들었습니다. 로컬 함수를 선언하는 것은 일반적인 기존 함수를 선언하는 것과 같습니다. 액세스 지정자없이 다른 함수 내에 선언됩니다.

관련 문장 - Csharp Function

  • C#에서 매개 변수로 함수 전달