技术、哲学、概念或其他方面的区别是什么?
raise "foo"
和
raise Exception.new("foo")
发布于 2011-01-26 09:46:57
From the offical documentation:
raise
raise( string )
raise( exception [, string [, array ] ] )
在没有参数的情况下,在$!
中引发异常,或者如果$!
为空则引发RuntimeError
。只需一个String
参数,它就会引发一个包含字符串作为消息的RuntimeError
。否则,第一个参数应该是Exception
类的名称(或发送异常时返回Exception
的对象)。可选的第二个参数设置与异常关联的消息,第三个参数是一个回调信息数组。异常由begin...end
块的救援子句捕获。
raise "Failed to create socket"
raise ArgumentError, "No parameters", caller
https://stackoverflow.com/questions/4800698
复制相似问题