English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
다중 형태는 C++의 객체 지향 프로그래밍의 핵심 특성으로, 여러 형태를 가지고 있습니다. ++에서, 이는 컴파일 시 다중 형태와 실행 시 다중 형태로 나뉩니다.
컴파일 시 다중 형태의 예는 함수 오버로드나 연산자 오버로드입니다. 함수 오버라이드는 실행 시 다중 형태의 예입니다.
C ++함수 오버로드를 사용한 다중 형태의 예제는 다음과 같습니다.
#include <iostream> using namespace std; class Example { public : void func(int a) { cout << "\nThe value of a: " << a; } void func(int a, int b) { cout << "\nThe value of a: " << a; cout << "\nThe value of b: " << b; } void func(char c) { cout << "\nThe value of c: " << c; } }; int main() { Example obj; cout << "\nOne int value"; obj.func(5); cout << "\nOne char value"; obj.func('A'); cout << "\nTwo int values"; obj.func(7, 2); return 0; }
출력 결과
위 프로그램의 출력 결과는 다음과 같습니다.
One int value a의 값: 5 One char value c의 값: A Two int values a의 값: 7 b의 값: 2
이제 위의 프로그램을 이해해 보겠습니다.
func();
class Example에 있는 멤버 함수는 오버로드되었습니다.func();
필요에 따라 다양한 파라미터를 가진3위의 코드 스�lian을 사용하여 제공된 기능을 설명합니다.
class Example { public : void func(int a) { cout << "\nThe value of a: " << a; } void func(int a, int b) { cout << "\nThe value of a: " << a; cout << "\nThe value of b: " << b; } void func(char c) { cout << "\nThe value of c: " << c; } };
함수 내에서main();
Example 클래스의 객체 obj를 생성합니다.func();
다양한 파라미터를 사용하여 함수 오버로드를 시연하기 위해 코드 스�lian을 제공합니다.
int main() { Example obj; cout << "\nOne int value"; obj.func(5); cout << "\nOne char value"; obj.func('A'); cout << "\nTwo int values"; obj.func(7, 2); return 0; }