C++ C++;交换函数什么都不做?

C++ C++;交换函数什么都不做?,c++,swap,C++,Swap,出于某种原因,这会返回原始值,有人能告诉我为什么吗?非常感谢。我设置了temp,不确定这是否正确,因为num1和num2需要设置为相等,如果我没有设置,它们都将保持1 代码: 更改: void swap1(double& num1, double& num2); void swap2(double& num1, double& num2); 在您的主要功能中: swap1(num1, num2); swap2(num1, num2); 它应该可以工作,因为

出于某种原因,这会返回原始值,有人能告诉我为什么吗?非常感谢。我设置了temp,不确定这是否正确,因为num1和num2需要设置为相等,如果我没有设置,它们都将保持1

代码:

更改:

 void swap1(double& num1, double& num2);
 void swap2(double& num1, double& num2);
在您的主要功能中:

swap1(num1, num2);
swap2(num1, num2);
它应该可以工作,因为您使用的是函数,而不是在主函数中声明它。

更改:

 void swap1(double& num1, double& num2);
 void swap2(double& num1, double& num2);
在您的主要功能中:

swap1(num1, num2);
swap2(num1, num2);

它应该可以工作,因为您使用的是函数,而不是在主函数中声明它。

void swap1(double&num1,double&num2)是一个函数声明,而不是一个函数调用不值得向下投票和关闭投票。这是一个MCVE,对于初学者来说错误并不明显,因为甚至没有编译器警告。@Justin我没有注意到我这么做了,非常感谢much@ChristianHackl对不起,如果我的问题不好,我是一个初学者,仍在学习阅读一些错误。@ChristianHackl也许不否决这个问题是合理的,因为它的表述很好,但在我看来,接近票数的投票是恰当的。这是一个错误,尤其是我不认为这是“以帮助读者的方式解决问题”。任何曾经在C++中调用函数的人都不会遇到这个问题。主函数中的code>是一个函数声明,而不是一个函数调用不值得向下投票和关闭投票。这是一个MCVE,对于初学者来说错误并不明显,因为甚至没有编译器警告。@Justin我没有注意到我这么做了,非常感谢much@ChristianHackl对不起,如果我的问题不好,我是一个初学者,仍在学习阅读一些错误。@ChristianHackl也许不否决这个问题是合理的,因为它的表述很好,但在我看来,接近票数的投票是恰当的。这是一个错误,尤其是我不认为这是“以帮助未来读者的方式解决的”。任何曾经在C++中调用函数的人都不会遇到这个问题。
 void swap1(double& num1, double& num2);
 void swap2(double& num1, double& num2);
swap1(num1, num2);
swap2(num1, num2);