English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C++ 기본 매개변수 (실제 매개변수)

이 문서에서는 기본 매개변수가 무엇인지, 그 사용법 그리고 필요한 선언에 대해 배울 것입니다.

C ++프로그래밍에서, 제공할 수 있습니다함수매개변수의 기본 값

기본 매개변수 뒤에 숨은 아이디어는 간단합니다. 함수에 매개변수를 전달하여 호출하면, 이 매개변수는 함수에서 사용됩니다.

하지만, 함수를 호출할 때 매개변수를 전달하지 않으면 기본 값을 사용합니다。

기본 값이 함수 원형의 매개변수에 전달됩니다。

기본 매개변수의 작동

예제: 기본 매개변수

// c++프로그램이 기본 매개변수의 작동 방식을 보여줍니다
#include <iostream>
using namespace std;
void display(char =)*', int = 1);
int main()
{
    cout << "\n매개변수가 전달되지 않습니다:\n";
    display();
    
    
    display('#');
    
    cout << "\n두 매개변수가 전달됩니다:\n";
    display('$', 5);
    return 0;
}
void display(char c, int n)
{
    for(int i = 1; i <= n; ++i)
    {
        cout << c;
    }
    cout << endl;
}

출력 결과

매개변수가 전달되지 않습니다:
*
첫 번째 매개변수가 전달됩니다:
#
두 매개변수가 전달됩니다:
$$$$$

위의 프로그램에서 기본 값이 할당된 매개변수 void display(char ='*'int = 1);

먼저, display()에 어떤 매개변수도 전달하지 않고 함수를 호출합니다. 이 경우, display() 함수는 기본 매개변수 c = *와 n = 1을 사용합니다。

그런 다음, 두 번째로 함수를 호출할 때는 첫 번째 매개변수만 전달합니다. 이 경우, 함수는 전달된 첫 번째 기본 값을 사용하지 않습니다. 실제로 첫 번째 매개변수로 전달된 c = #를 사용하며, 기본 값 n = 1으로 전달됩니다.

제3 번 display()가 호출될 때 두 매개변수를 전달합니다. 두 매개변수 모두 기본 매개변수를 사용하지 않습니다. 전달된 값은 c = $와 n = 5.

기본 매개변수를 사용할 때 흔히 보이는 오류

  1. void add(int a, int b =) 3, int c, int d = 4);
    위의 함수는 컴파일되지 않습니다. 두 매개변수 사이에 기본 매개변수를 건너뛰지 못합니다。
    이 경우 c에 기본 값이 할당되어야 합니다。
     

  2. void add(int a, int b =) 3, int c, int d);
    위의 함수는 컴파일되지 않습니다. 매개변수 b 이후에 각 매개변수에 기본 값을 제공해야 합니다.
    이 경우, c와 d도 기본 값이 할당되어야 합니다.
    기본 값이 필요하다면, 해당 매개변수가 마지막 매개변수인 것을 확인하십시오. 예를 들어: void add(int a, int b, int c, int d = 4);
     

  3. 함수가 여러 가지 작업을 수행하거나 로직이 너무 복잡하다면 사용할 수 있습니다.  함수 오버로드로직을 더 잘 분리합니다.

  4. 기본 값을 사용하든지라도 항상 하나의 목적을 위한 함수를 작성해야 합니다.