满足动态条件时退出递归函数

满足动态条件时退出递归函数,第1张

满足动态条件时退出递归函数

要以最简单的形式显示,您可以执行以下 *** 作

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语言中完成 *** 作,只需使用指针而不是引用即可。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4895698.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存