温馨提示×

c++引用传递与const引用区别

c++
小樊
87
2024-06-24 17:24:35
栏目: 编程语言

  1. 引用传递:
  • 引用传递是将实参的地址传递给形参,形参通过引用可以修改实参的值。
  • 使用引用传递可以节省内存,避免拷贝大量数据。
  • 在函数内部对形参的修改会影响到实参。
void changeValue(int& num) {
    num = 10;
}

int main() {
    int x = 5;
    changeValue(x);
    cout << x; // 输出10
    return 0;
}
  1. const引用:
  • const引用是不允许修改实参的值的引用。
  • 使用const引用可以防止在函数内部意外修改实参的值。
  • const引用可以绑定到临时变量或常量上。
void printValue(const int& num) {
    cout << num;
}

int main() {
    int x = 5;
    printValue(x);
    printValue(10);
    return 0;
}

总结:

  • 引用传递可以修改实参的值,而const引用不允许修改实参的值。
  • 使用const引用可以避免不必要的数据复制和修改实参的风险。

0