45. C++ 함수 오버로딩

C++ 함수 오버로딩

1. 개요

1.1 문서 개요

이 문서는 C++에서 동일한 함수 이름으로 여러 개의 함수를 정의하는 기능인 함수 오버로딩(function overloading)에 대해 설명합니다. 오버로딩은 코드의 가독성과 재사용성을 높이며, 다양한 형태의 입력을 처리할 수 있게 합니다.

2. 내용

2.1 함수 오버로딩의 개념

2.1.1 정의

함수 이름은 동일하지만 매개변수의 수, 타입, 순서가 다르면 서로 다른 함수로 간주하는 기능입니다.

int add(int a, int b);
double add(double a, double b);
int add(int a, int b, int c);

2.2 오버로딩 규칙

2.2.1 반환형만 다를 경우 오버로딩 불가

오버로딩은 반환형이 아닌 매개변수를 기준으로 결정됩니다.

int func(int a);
// double func(int a); // 오류: 오버로딩 불가

2.2.2 기본 매개변수와의 관계

기본 매개변수가 중복되면 오버로딩 혼란이 발생할 수 있습니다.

void func(int a);
void func(int a, int b = 0); // 모호성 발생 가능

3. 마무리

C++의 함수 오버로딩 기능은 다양한 입력을 처리하는 데 유용하며, 객체지향 설계의 다형성 구현에 기초가 됩니다. 단, 반환형 차이만으로는 오버로딩이 불가능하며, 기본 매개변수와의 조합에도 주의가 필요합니다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

error: Content is protected !!
위로 스크롤