在下面的代码中
begin raise StandardError,'message' #some code that raises a lot of exception rescue StandardError #handle error rescue OtherError #handle error rescue YetAnotherError #handle error end
我想打印一个警告,指出错误的类型和消息,而不会向每个救援条款添加print语句,例如
begin raise StandardError,'message' #some code that raises a lot of exception rescue StandardError #handle error rescue OtherError #handle error rescue YetAnotherError #handle error ??? print "An error of type #{???} happened,message is #{???}" end
解决方法
begin raise ArgumentError,"I'm a description" rescue Exception => ex puts "An error of type #{ex.class} happened,message is #{ex.message}" end
打印:发生错误类型ArgumentError,消息是我的描述