c++ - 在 C++ 中的递归函数中使用引用参数

标签 c++ recursion reference

在 C++ 中的递归函数中,其参数之一是引用类型。我只想知道在函数的递归调用过程中会发生什么。

如果没有引用类型,我相信每次递归调用函数时,都会在堆栈中创建一个新变量。所以对于引用,每次在堆栈中创建的都是某种指针,指向声明它的原始变量的地址,对吧?

所以在这种情况下使用引用,我相信有时我们可以节省一些内存。

最佳答案

是的,您的想法是正确的。当然,请注意,只有当参数类型大于指针时,您才能节省内存。对整数(甚至可能是 double )的引用不会在堆栈上保存任何内存。

关于c++ - 在 C++ 中的递归函数中使用引用参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21494102/

相关文章:

c# - 引用 dll 在 C# 中不起作用

c++ - 常量引用不是 "updated"

c++ - 高速缓存行大小倍数的变量的高速缓存行填充

recursion - 查看是否有可能通过Prolog到达火车

c++ - 为什么最小 MFC 项目在 Visual Studio 2013 上有链接错误?

algorithm - 递归树的时间复杂度

c - NxN矩阵行列式递归问题

c++ - 为什么可以只给一个接受引用的函数一个对象(而不是一个引用)?是否自动生成引用?

c++ - 在 R 值中使用 volatile 两次

c++ - 如何使用模板为 C++ 类创建 "calculated attribute"