B2024001225 윤지선

2학기 11주차 예습과제 본문

2024년 2학기/C++ 프로그래밍

2학기 11주차 예습과제

윤지선 2024. 11. 11. 00:22

함수 중첩과 디폴트 인자

다형성의 종류

- 보편적 자형성

   - 포함 다형성

      - 상속

   - 인자 다형성

      - 템플릿

- 불규칙 다형성

   - 중첩

      - 함수/연산자

   - 코어션

      - 형변환

 

함수 중첩(function overloading)

- 함수 오버로딩

- 다형성을 구현하는 한가지 방법

- C에서는 기능이 같은데도 처리하는 자료형에 따라 다른 이름의 함수를 사용함

- 수의 절대값을 구하는 함수

   - abs() // int, abs(-4) = 4

   - labs() // long, labs(-31) = 3

   - fabs() // float, fabs(-3.6f) = 3.6

- 다형성을 제공하는 C++에서는 하나의 함수 이름을 중첩해서 사용 가능함

- 하나의 함수명을 여러 개의 유사 목적으로 사용할 수 있다

 

생성자 중첩

- 클래스의 멤버함수도 중첩이 가능하고 생성자도 중첩 가능

- 하지만 소멸자는 중첩 불가능

- 생성자 함수도 매개변수를 가질 수 있기 때문에 매개변수의 수나 자료형에 따라 여러 개의 생성자 함수를 중첩할 수 있음. 

- 생성자 함수를 중첩시키는 것은 객체에 초기값을 다양하게 주는 선택 기회를 제공하는 것임.

 

디폴트 인자

- 디폴트 매개변수

- int add(int, int);

C++에서는 함수를 호출할 때 별도의 매개변수를 전달하지 않아도 기본적인 값을 전달하도록 함수 원형을 선언할 때 디폴트 값을 지정할 수 있다.

- 해당 매개변수가 주어지지 않으면 디폴트 인자 값이 할당된다. 

- 모든 매개변수에 디폴트 값을 줄 필요는 없으며 필요한 곳에만 준다.

- 디폴트 매개변수의 사용은 함수 중첩의 축약형이다.

- 디폴트 매개변수를 갖는 함수를 만들 때, main()함수 전에 함수 선언을 하면 선언부에만 디폴트 인자를 지정해야 한다

- 일단 디폴트 매개변수를 정의하기 시작하면 그 다음(오른쪽)의 매개변수들은 모두 디폴트 매개변수를 가져야 한다.

'2024년 2학기 > C++ 프로그래밍' 카테고리의 다른 글

2학기 12주차 예습과제  (0) 2024.11.18
2학기 11주차 과제  (0) 2024.11.11
2학기 10주차 과제  (0) 2024.11.04
2학기 10주차 예습과제  (4) 2024.11.04
2학기 9주차 과제  (0) 2024.10.28