我在一个函数中有一些代码,我想将它们分成它自己的函数.我希望尽可能少地修改原始代码.下面我写了一个简单的例子,代码段只是"x + = y".我想取出代码并将其放在自己的函数中.CI必须通过将y更改为指针然后使用它来完成此操作.但是我记得在某个地方(现在已经忘记了)在C++中有一些技巧,我可以以一种代码可以保持为"x + = y"的方式传递变量.
仅供参考:我想做一些调用图分析,我想做这个过程(也许稍后会反过来).
void main()
{
int x = 2;
int y = 5;
#if KEEP_IN_BIG_FUNC
x += y;
#else // put in sub function
sub_function(y,&x);
#endif
printf("x = %d\n",x); // hopefully will print "7"
}
void sub_function(int y,int *x)
{
*x += y;
}
Run Code Online (Sandbox Code Playgroud)