如何创build退出消息

是否有一个函数调用退出程序并显示消息? 我在Perl中知道这很简单:

die("Message goes here") 

我厌倦了input这个:

 puts "Message goes here" exit 

abort函数执行此操作。 例如:

 abort("Message goes here") 

注意: abort消息将写入STDERR ,而不是写入STDOUT

如果你想在代码中表示一个实际的错误,你可能会引发一个RuntimeErrorexception:

 raise RuntimeError, 'Message goes here' 

这将打印一个堆栈跟踪,引发exception的types和你提供的消息。 根据您的用户,堆栈跟踪可能太可怕了,实际的消息可能会在噪音中丢失。 另一方面,如果由于实际的错误而死亡,堆栈跟踪会为您提供更多的debugging信息。

我从来没有听说过这样一个function,但它将是微不足道的实施…

 def die(msg) puts msg exit end 

那么,如果这是在你的所有脚本中包含的一些.rb文件中定义的,那么你就是金手指。只是因为它不是内置的,并不意味着你不能自己做;-)

我到这里寻找一种方法来执行一些代码,只要程序结束。
find这个 :

 Kernel.at_exit { puts "sayonara" } # do whatever # [...] # call #exit or #abort or just let the program end # calling #exit! will skip the call 

多次调用将注册多个处理程序。