【发布时间】:2015-09-01 06:24:43
【问题描述】:
由于一些特殊的原因,我想在一个大程序中去掉所有@tailrec的效果,但又不想手动做,编译时有没有可选的参数可以关闭尾递归优化?我只想将@tailrec 留在代码中,但不想在编译时检查它并进行尾递归优化。这可能吗?
【问题讨论】:
-
非常不清楚你在问什么。首先,您说要删除所有
@tailrec注释,然后您说要保留它们。是哪个?另外,你谈到关闭尾递归优化,这与@tailrec注解完全无关。 -
对不起,这是我的错。我的意思是“将@tailrec 留在代码中,但消除它们的影响”
-
@tailrec注释的唯一 效果是编译器会告诉你代码是否是尾递归的。所以,你仍然希望你的代码得到tailrec优化,你只是不想被告知不是尾递归的代码? -
我不希望编译器在带有@tailrec 的函数不是尾递归时发出错误。
标签: scala tail-recursion