【发布时间】:2012-06-13 03:40:47
【问题描述】:
在下面的按值调用示例中,我无法理解为什么这段代码没有将 5 的值更改为 6。
第 11 行调用了函数 changeValue,它的值是 6,所以我本以为应该输出 6,但仍然输出 5?
#include <iostream>
using namespace std;
void changeValue(int value);
int main()
{
int value = 5;
changeValue(value);
cout << "The value is : " << value << "." << endl;
return 0;
}
void changeValue(int value)
{
value = 6;
}
// This doesn't change the value from 5 to 6. 5 is output?
【问题讨论】:
-
您可以通过定义
main之前的函数来避免很多愚蠢的工作,而不是在此处声明它们然后定义它们。自 2012 年起,不做无意义的多余事情的一般原则被称为 DRY:Don't Repeat Yourself。只需将其应用于大多数事物。 ;-)