要以最简单的形式显示,您可以执行以下 *** 作:
void foo(bool & ret) { // doStuff... if (ret) return; foo(ret); // doStuff... if (ret) return; foo(ret);}
然后,您启动递归:
bool ret = false;foo(ret);
在您的情况下,您可以通过以下方式中断递归
if (!changesLeft) { printf("%sn", str); ret = true; return;}
设置为true将使您脱离整个调用树。
您也可以在C语言中完成 *** 作,只需使用指针而不是引用即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)