본문 바로가기
C#/c# 기초

7. C# 함수 오버로드와 재귀함수

by le_piee 2021. 2. 24.

함수 오버로드

  • 클래스 하나에 매개변수를 달리하여 이름이 동일한 함수를 여러개 정의하는 것
  • 함수 다중정의 즉 여러번 정의한다는 의미

 

함수 오버로드 사용

using System;

Class Overload
{
	static void Member(int member) // 매개변수가 int
    {
    	Console.WriteLine(member);
    }
    static void Member(string member) // 매개변수가 string
    {
    	Console.WriteLine(member);
    }
    
    static void Main()
    {
    	Member(3); //int형의 매개변수를 가진 Member 함수 호출
        Member("3"); //string형의 매개변수를 가진 Member 함수 호출
    }
    
    
}

 

 

재귀함수

  • 함수에서 자기 자신을 호출하는 것을 재귀함수라고 함
  • 트리 탐색 구조에서 많이 사용함

 

재귀함수 예제(팩토리얼)

using System;

class Demo
{
	static void Main()
    {
   	Fact(4);
    Factorial(4);
    }
    
    //3항 연산자를 사용한 팩토리얼
    static int Fact(int n)
    {
    return (n > 1 ? n * Fact(n - 1) : 1;)
    }
    
    //재귀함수를 사용한 팩토리얼
    static int Factorial(int n)
    {
    	it(n == 0 || n ==1 )
        {
        return 1;
        }
        return n * Factorial(n - 1);
    }

}

 

'C# > c# 기초' 카테고리의 다른 글

5. C# 제어문  (0) 2021.02.18
4. C# var 형식과 dynamic 형식  (0) 2021.02.18
3. C# Convert를 이용한 형식 변환  (0) 2021.02.18
2. C# 변수와 상수  (0) 2021.02.17
1. C# 소개와 특성 및 닷넷생태계  (0) 2021.02.17