我想调用“function2();”仅在第一次调用recurfunc()时的单次时间。
recurfunc()
{
function2(); //to be called first time only in a recursive function
static int i= 0;
i++;
if(i>20)
return;
else
recurfunc();
}
答案 0 :(得分:8)
对代码进行微不足道的更改:
void recurfunc() // * Remember to specify return type *
{
static int i= 0;
if (i==0)
function2(); // called only the first time.
i++;
if(i>20)
return;
else
recurfunc();
}
答案 1 :(得分:3)
使用帮助函数:
void recurfunc() {
function2();
helperRecurFunc();
}
其中helperRecurFunc()
是您原始的方法而没有调用func2()