c++++ 中有四种函数调用约定:通过值传递、通过指针传递、通过引用传递和通过 rvo 传递。通过值传递传递参数的副本,通过指针传递传递参数的地址,通过引用传递传递参数的引用,而通过 rvo 传递则在特定条件下直接移动对象的内容。
C++ 函数调用约定
函数调用约定规定了如何在函数调用过程中传递参数,以及在调用返回时如何返回结果。C++ 中有四种主要的函数调用约定:
1. 通过值传递(pass-by-value)
立即学习“C++免费学习笔记(深入)”;
2. 通过指针传递(pass-by-pointer)
3. 通过引用传递(pass-by-reference)
4. 通过 RVO 传递(return value optimization,返回值优化)
实战案例
// 通过值传递整数 void func_by_val(int val) { val++; // 不会影响原始值 } // 通过指针传递整数 void func_by_ptr(int *val) { (*val)++; // 会影响原始值 } // 通过引用传递整数 void func_by_ref(int &val) { val++; // 会影响原始值 } int main() { int a = 5; func_by_val(a); std::cout << a << std::endl; // 输出 5 func_by_ptr(&a); std::cout << a << std::endl; // 输出 6 func_by_ref(a); std::cout << a << std::endl; // 输出 7 }
以上就是C++ 函数调用约定有哪些?的详细内容,更多请关注php中文网其它相关文章!
c++怎么学习?c++怎么入门?c++在哪学?c++怎么学才快?不用担心,这里为大家提供了c++速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号