以下技术是否有任何合理的解释:
//value HAS TO BE CHANGED those are requirements
int f(int value)
{
int tmp = value;//In order to not change "value" inside fnc - again requirements
//do something with tmp
return tmp;
}
int a = 0;
a = f(a);//here I assign to a anyway
而不是这个:
void f(int& value)
{
//do something with value
}
或这个:
int f(int& value)
{
//do something with value
return value;
}
您是否同意第一个代码片段(通常)是不良编程实践的一个例子?