산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C++ 프로그래밍 기본 인수(매개변수)

C++ 프로그래밍 기본 인수(매개변수)

이 튜토리얼에서는 C++ 기본 인수와 예제를 통해 작동하는 방법을 배웁니다.

C++ 프로그래밍에서는 함수 매개변수에 대한 기본값을 제공할 수 있습니다.

기본 인수가 있는 함수가 인수를 전달하지 않고 호출되면 기본 매개변수가 사용됩니다.

단, 함수 호출 시 인수가 전달되면 기본 인수는 무시됩니다.

<시간>

기본 인수 작업

<그림>

위 이미지에서 기본 인수의 작동을 이해할 수 있습니다.

  1. temp()일 때 가 호출되면 두 기본 매개변수가 모두 함수에서 사용됩니다.
  2. temp(6)일 때 호출되면 첫 번째 인수는 6이 됩니다. 두 번째 매개변수에는 기본값이 사용됩니다.
  3. temp(6, -2.3)일 때 호출되면 기본 매개변수가 모두 재정의되어 i = 6가 됩니다. 및 f = -2.3 .
  4. temp(3.4)일 때 가 전달되면 첫 번째 인수를 전달하지 않고 두 번째 인수를 전달할 수 없기 때문에 함수가 원하지 않는 방식으로 작동합니다.

    따라서 3.4 첫 번째 인수로 전달됩니다. 첫 번째 인수가 int로 정의되었기 때문에 , 실제로 전달되는 값은 3입니다. .
<시간>

예:기본 인수

#include <iostream>
using namespace std;

// defining the default arguments
void display(char = '*', int = 3);

int main() {
    int count = 5;

    cout << "No argument passed: ";
    // *, 3 will be parameters
    display(); 
    
    cout << "First argument passed: ";
     // #, 3 will be parameters
    display('#'); 
    
    cout << "Both arguments passed: ";
    // $, 5 will be parameters
    display('$', count); 

    return 0;
}

void display(char c, int count) {
    for(int i = 1; i <= count; ++i)
    {
        cout << c;
    }
    cout << endl;
}

출력

No argument passed: ***
First argument passed: ###
Both arguments passed: $$$$$

이 프로그램의 작동 방식은 다음과 같습니다.

  1. display() 인수를 전달하지 않고 호출됩니다. 이 경우 display() 기본 매개변수 c = '*'를 모두 사용합니다. 및 n = 1 .
  2. display('#') 단 하나의 인수로 호출됩니다. 이 경우 첫 번째는 '#'이 됩니다. . 두 번째 기본 매개변수 n = 1 유지됩니다.
  3. display('#', count) 두 인수로 호출됩니다. 이 경우 기본 인수는 사용되지 않습니다.

함수 정의 자체에서 기본 매개변수를 정의할 수도 있습니다. 아래 프로그램은 위 프로그램과 동일합니다.

#include <iostream>
using namespace std;

// defining the default arguments
void display(char c = '*', int count = 3) {
    for(int i = 1; i <= count; ++i) {
        cout << c;
    }
    cout << endl;
}

int main() {
    int count = 5;

    cout << "No argument passed: ";
    // *, 3 will be parameters
    display(); 
    
    cout << "First argument passed: ";
     // #, 3 will be parameters
    display('#'); 
    
    cout << "Both argument passed: ";
    // $, 5 will be parameters
    display('$', count); 

    return 0;
}
<시간>

기억해야 할 사항

  1. 매개변수에 대한 기본값을 제공하면 모든 후속 매개변수에도 기본값이 있어야 합니다. 예:
    // Invalid
    void add(int a, int b = 3, int c, int d);
    
    // Invalid
    void add(int a, int b = 3, int c, int d = 4);
    
    // Valid
    void add(int a, int c, int b = 3, int d = 4);
  2. 함수 프로토타입 대신 함수 정의에서 기본 인수를 정의하는 경우 함수 호출 전에 함수를 정의해야 합니다.
    // Invalid code
    
    int main() {
        // function call
        display();
    }
    
    void display(char c = '*', int count = 5) {
        // code
    }

C 언어

  1. C# 프로그래밍의 네임스페이스
  2. C++ 연산자
  3. C++ 주석
  4. C++ 프로그래밍에서 함수에 배열 전달
  5. C++ 클래스 템플릿
  6. C 프로그래밍 연산자
  7. C 프로그래밍의 사용자 정의 함수 유형
  8. C 튜토리얼
  9. C - 기능
  10. C - 변수 인수