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号