#include <iostream>
void print(int x){
std::cout << "int : " << x << std::endl;
}
void print(char x){
std::cout << "char : " << x << std::endl;
}
void print(double x){
std::cout << "double : " << x << std::endl;
}
int main() {
int a = 1;
char b = 'c';
double c = 3.2f;
print(a);
print(b);
print(c);
return 0;
}
print 이름의 함수가 3개 정의되어있지만 C++ 에서는 함수의 이름이 같더라도 인자가 다르면 다른 함수라고 판단하기 때문에 오류가 발생하지 않는다.
오버로딩 과정으로
1 : 타입이 정확히 일치하는 함수 탐색
2 : 형변환을 통해 일치하는 함수를 탐색
3 : 포괄적인 형변환을 통해 일치하는 함수를 탐색
'C++' 카테고리의 다른 글
4. 객체 (0) | 2024.06.16 |
---|---|
3. new, delete (0) | 2024.06.15 |
2. 참조 (1) | 2024.06.15 |
1.2 C 와 C++ (기본 문법 비교) (0) | 2024.06.15 |
왜 C++ 인가 (namespace) (1) | 2024.06.15 |