개발/C++기본문법
오버로딩과 다형성
desafinado
2023. 5. 16. 23:45
728x90
#include <iostream>
class Calculator {//계산기 클래스
public://이름이 같은함수
int add(int x, int y) {//오버로딩 매개변수의 타입에 따라 어떤함수를 호출할지 결정함
return x + y;
}
double add(double x, double y) {//오버로딩 매개변수의 타입에 따라 어떤함수를 호출할지 결정함
return x + y;
}
};
int main() {
Calculator calc;//클래스 생성
int sum1 = calc.add(2, 3);//int끼리의 합 오버로딩
double sum2 = calc.add(2.5, 3.5);//double 끼리의 합 오버로딩
std::cout << sum1 << "\n";//정수형의 합이 출력
std::cout << sum2 << "\n";//더블형의 합이 출력
return 0;
}
오버로딩과 다형성
오버로딩은 같은 이름의 함수가 매개변수의 타입을 인식하고 맞는 함수를 불러오는것이다
다형성이란 한 타입의 참조변수를 통해 여러 타입의 객체를 참조할 수 있도록 만든 것을 의미한다
728x90