C++.3 function overload / default

lsw·2021년 3월 22일
0

C++

목록 보기
3/8
post-thumbnail

1. 목적

  1. 함수 오버로드 확인
  2. 함수 매개변수 default값 지정해 보기

2. 코드

#include <iostream>
// 디폴트값 지정, 함수 오버로드
// 디폴트 확인
int BoxVolume(int width=1, int length=1, int height=1)
{
   int Volume;
   Volume = width * length * height;
   return Volume;
}

// 오버로드 확인
void Showmessage()
{
   std::cout << "Happy birthday!" << std::endl;
}

void Showmessage(int num)
{
    std::cout << "Lebron scored " << num << " points tonight" << std::endl;
}

int Showmessage(int num1, int num2)
{
   return num1 + num2;
}

int main()
{
// 디폴트 작동 확인
  int Volume;
  Volume=BoxVolume(2, 3, 4);
  std::cout << "Volume is : " << Volume << std::endl;
  Volume=BoxVolume(2, 3);
  std::cout << "Volume is : " << Volume << std::endl;
  Volume=BoxVolume(2);
  std::cout << "Volume is : " << Volume << std::endl << std::endl;
  
// 함수 오버로드 확인
   Showmessage();
   Showmessage(48);
   std::cout << Showmessage(22, 10) << std::endl;

return 0;
}
  • 자세한 설명은 주석 참조

3. 결과


4. 디폴트 지정 시 유의사항

함수를 불러와 인자를 입력했을 때 매개변수의 좌측부터 복사가 진행되므로 디폴트는 매개변수 우측부터 지정해 주어야 한다. 그렇지 않을 시 위와같은 에러가 발생한다.

5. 결론

매개변수는 우측부터 디폴트처리 해야 한다. 또한 함수 오버로드는 반환형, 매개변수의 형, 개수가 다르다면 언제든지 활용할 수 있다.

profile
미생 개발자

0개의 댓글