본문 바로가기

C++

함수 오버로딩

Function Overloading()의 이해

 C 언어에서는 동일한 이름의 함수명을 허용하지 않는다. 하지만 C++ 에서는 함수 호출시 전달되는 매개변수의 인자값이 다르다면, 함수정의를 허용한다. 이러한 함수의 정의를 가르켜 '함수 오버로딩'이라고 한다.

 

C++은 두 가지 정보를 기반으로 호출하는 함수를 찾는다.

1. 함수의 이름

2. 매개변수의 선언

 

매개변수의 개수가 다르거나, 전달되는 인수의 개수 및 자료형이 다르게 되면 함수의 오버로딩을 통해서 구분이 가능하다.

즉, 함수의 반환형이 다른 것이 호출되는 함수를 구분하는 기준이 될 수 있다.

 

#include <iostream>

void Func(void)
{
	std :: cout << ":Func(void) " << endl;
}

void Func(char c)
{
	std :: cout << "Func(char c)" << endl;
}

void Func(int a, int b)
{
	std:: cout << "Func(int a, int b)" << endl;
}

int main(void)
{
	Func();
	Func('A');
    Func(1, 2);


	return 0;
}

 

'C++' 카테고리의 다른 글

참조자  (0) 2024.09.18
범위지정 연산자  (1) 2024.09.18
String 메서드  (0) 2024.05.24
개행 문자 입력 방식  (0) 2024.05.24
Fill 함수  (0) 2024.03.26