21xrx.com
2024-12-22 15:56:48 Sunday
登录
文章检索 我的文章 写文章
C++中传递函数参数的方法
2023-07-12 01:13:04 深夜i     --     --
C++ 传递 函数参数 方法 引用 指针 默认参数

在C++中,函数参数传递有多种方式。下面我们将介绍常用的三种传递方式:值传递、引用传递和指针传递。

1. 值传递

当我们调用一个函数并传递参数时,参数将通过值传递到函数中。这意味着,函数中的参数值是原始值的一个副本,对副本的修改不会影响原始值。在函数的末尾,函数将从栈中弹出该参数的副本。

示例:


void addNumber(int num) {

  num += 10;

}

int main() {

  int x = 5;

  addNumber(x);

  cout << x; // 输出5

  return 0;

}

在这个示例中,我们传递了一个整数x给函数addNumber。在函数中,我们在num的副本上加了10,但是当我们返回到main函数时,我们发现x的值仍然是5。

2. 引用传递

当我们想要在函数中修改原始参数的值时,我们可以使用引用传递。引用传递允许函数访问原始参数的内存位置,从而可以更新原始值。在函数参数前面加一个&符号即可将参数传递给函数的引用。

示例:


void addNumber(int& num) {

  num += 10;

}

int main() {

  int x = 5;

  addNumber(x);

  cout << x; // 输出15

  return 0;

}

在这个示例中,我们传递了一个整数x给函数addNumber的引用。在函数中,我们在num的引用上加了10,这将更新原始值x的值。

3. 指针传递

可用于在函数中更新原始参数值的另一种方法是使用指针传递。指针与引用类似,允许函数访问原始参数的内存位置。指针传递是通过将参数传递给指针实现的。

示例:


void addNumber(int* num) {

  (*num) += 10;

}

int main() {

  int x = 5;

  addNumber(&x);

  cout << x; // 输出15

  return 0;

}

在这个示例中,我们传递了一个整数x的地址给函数addNumber。在函数中,我们解引用该指针并在其值上加10,这将更新原始值x的值。

总结

在C++中,函数参数传递有三种方式:值传递,引用传递和指针传递。通过值传递传递参数时,函数将处理参数的副本,而对原始参数没有影响。引用传递和指针传递允许函数更改原始参数的值。引用传递使用&符号传递参数,而指针传递使用指向参数的指针。选择哪种传递方式取决于您的程序的需求。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复