未在文档中记录。但是通过实验,我发现将返回类型的方法键入为Void,取消了"最后一个语句返回" (这很好)让它回归Nil。
def foo; "baz"; end #=> "baz" : String
def foo : Void; "baz"; end
#=>零
def foo : Nil; "baz"; end
#=>零
问题是:
高于假设吗?
Void和Nil方法返回类型之间有什么区别吗?
答案 0 :(得分:2)
你是对的。语言中的某些最后更改尚未在文档中得到反映。我想是时候再写一些文档了: - )
请参阅合并后的内容:https://github.com/crystal-lang/crystal/pull/2701
所以Void和Nil之间没有区别,推荐的事情是在Crystal land中使用Nil(在C绑定中使用Void)