通过引用传递此函数中的参数

时间:2012-12-06 18:29:46

标签: c++

这是.h文件中的一个功能

LinkedListElement<char> * findLastNthElementRecursive(int n, int &current);

同时尝试

findLastNthElementRecursive(3,0);

int a = 0;
findLastNthElementRecursive(3,&a);

错误是没有匹配的功能

我认识findLastNthElementRecursive(3,a);这就是这个方式

但如果我不想创建像a那样的新变量,该怎么做?

2 个答案:

答案 0 :(得分:3)

临时无法绑定到非const引用。在第一种情况下,您尝试传递temorary作为参数,但它失败。

第二个不起作用,因为&aa的地址,实际上是int*,因此与功能的签名不匹配。< / p>

正确的方法是

int a = 0;
findLastNthElementRecursive(3,a);

答案 1 :(得分:1)

尝试:

int a = 0;
findLastNthElementRecursive(3, a);

另请注意,您忽略了findLastNthElementRecursive()的返回值。