Latest web development tutorials

C ++ call-by

Funkcja C ++ Funkcja C ++

Dotradycyjnych wartości parametrów przekazywanych do wywołaniafunkcji, skopiuj rzeczywiste wartości parametrów formalnych parametrów funkcji. W tym przypadku, to zmodyfikowana forma parametrów wewnątrz funkcji nie wpłynie na rzeczywiste parametry.

Domyślnie C ++ przy użyciupołączenia po sposobówprzekazywania parametrów. Ogólnie rzecz biorąc, oznacza to, że kod wewnątrz funkcji nie zmienia rzeczywiste parametry używane do wywołania funkcji.Zmienne () jest zdefiniowana następująco:

// 函数定义
void swap(int x, int y)
{
   int temp;

   temp = x; /* 保存 x 的值 */
   x = y;    /* 把 y 赋值给 x */
   y = temp; /* 把 x 赋值给 y */
  
   return;
}

Teraz, niech nam przekazując rzeczywiste argumenty zadzwonićswap function ():

#include <iostream>
using namespace std;
 
// 函数声明
void swap(int x, int y);
 
int main ()
{
   // 局部变量声明
   int a = 100;
   int b = 200;
 
   cout << "交换前,a 的值:" << a << endl;
   cout << "交换前,b 的值:" << b << endl;
 
   // 调用函数来交换值
   swap(a, b);
 
   cout << "交换后,a 的值:" << a << endl;
   cout << "交换后,b 的值:" << b << endl;
 
   return 0;
}

Gdy powyższy kod jest kompilowany i wykonany, że daje następujące wyniki:

交换前,a 的值: 100
交换前,b 的值: 200
交换后,a 的值: 100
交换后,b 的值: 200

Powyższy przykład pokazuje, że, chociaż zmiany w funkcji i wartością B, ale w rzeczywistości, A i B wartości nie zmieniło.

Funkcja C ++ Funkcja C ++