#include<iostream>
#define LOG(x) std::cout<<x<<std::endl
void increment(int value)
{
++value;
}
int main()
{
int a = 6;
increment(a);
LOG(a);
std::cin.get();
}
我按F11键并调试到“增量”功能。该功能的参数等于6。但是为什么“值++”不起作用。我知道它称为“按值传递”,但是我认为本地值应该改变身体的功能。
#include<iostream>
#define LOG(x) std::cout<<x<<std::endl
void increment(int& value)
{
++value;
}
int main()
{
int a = 6;
increment(a);
LOG(a);
std::cin.get();
}
在这里,我通过引用和值加一传递。这是因为编译器无法获取“ ++ value”的地址,因此将其丢弃,很抱歉第一次提交。