web-dev-qa-db-ja.com

C#は末尾再帰を行いますか?

可能性のある複製:
。net/C#が末尾再帰を排除しないのはなぜですか?

C#は尻尾反省を行いますか?

表示されるかどうかを示すドキュメントが見つかりません。

32
Vilor

C#は本来、言語の末尾再帰をサポートしていませんが、ここで興味深い article は、状況に役立つ可能性のある同様のテクニックコールトランポリンを呼び出します

10
Chris McGrath

残念ながら、少なくともまだそうではありません。

標準自体が末尾再帰の許可(禁止)について何かを指定しているかどうかはわかりません。いずれにせよ、.Netは末尾再帰をサポートしているため、これがC#に組み込まれるのはいいことです。

.Net言語でテール再帰が本当に必要な場合は、代替としてF#を検討してください。