매개변수 전달

C++에는 함수에 매개변수를 전달하는 3가지 방법이 있습니다.
  • 가치 전달
  • 참조로 전달
  • 포인터 통과

  • 여기에서 그 중 하나에 대해 설명하겠습니다.

    값으로 전달



    pass by value 에서 각 함수는 자체 로컬 변수를 가지며 변수는 자체 로컬 범위를 갖습니다.

    #include <iostream>
    using namespace std;
    
    void swap( int a , int b){
    int temp = a;
    a = b; 
    b = temp;
    cout<< "Values inside swap function , a is "<<a<<" and b is "<<b<<endl;
    }
    
    int main(){
    int a = 10 ;
    int b = 20;
    cout<<"Before swapping a is "<<a<<" and b is "<<b<<endl;
    swap(a,b);
    cout<<"After swapping a is "<<a<<" and b is "<<b<<endl;
    
    return 0;
    }
    
    
    


    여기에서 이 코드를 실행하면 값이 swap 함수에서만 교환되지만 코드 제어가 main 함수로 복귀할 때 swap 함수의 활성화 레코드가 삭제되면 "a"와 "b"의 값은 다음과 같습니다. 변경되지 않은 . "main"및 "swap"함수에는 자체 "a"및 "b"변수가 있기 때문입니다.

    Pass by value는 원래 변수의 값을 변경하지 않고 결과를 반환하려는 경우 좋은 선택입니다. 예를 들어 :-

    int add(int a, int b){
    return a+b;
    }
    


    다음 시간에는 Pass by Reference를 배우겠습니다.

    좋은 웹페이지 즐겨찾기