[c++] 함수 오버로딩

함수 오버로딩은 개발자가 함수 호출 시 사용하는 매개변수의 형식을 고려하지 않고도 간결한 코드를 작성할 수 있도록 도와줍니다. 예를 들어, “add”라는 이름의 함수를 정수형 매개변수 두 개 또는 실수형 매개변수 두 개를 받아 더하는 방식으로 오버로딩할 수 있습니다.

아래는 함수 오버로딩의 간단한 예제입니다.

#include <iostream>
using namespace std;

class OverloadExample {
    public:
        void print(int value) {
            cout << "정수 값: " << value << endl;
        }

        void print(double value) {
            cout << "실수 값: " << value << endl;
        }
};

int main() {
    OverloadExample obj;
    obj.print(5);      // 정수 값: 5
    obj.print(5.5);    // 실수 값: 5.5
    return 0;
}

위의 예제에서 OverloadExample 클래스에는 print 함수가 두 번 오버로드되어 정의되어 있습니다. 하나는 정수를 받고 다른 하나는 실수를 받습니다. 함수 print를 호출할 때 인자로 전달하는 값의 자료형에 따라 적절한 오버로딩된 함수가 호출됩니다.

함수 오버로딩을 사용하면 코드의 가독성을 높이고 관리를 용이하게 할 수 있습니다. 그러나 함수 오버로딩이 오용되면 혼동을 줄 수 있으므로 신중하게 사용해야 합니다.

참고자료: https://docs.microsoft.com/en-us/cpp/cpp/function-overloading