SQLite和Ruby救援

时间:2013-09-19 17:52:52

标签: ruby hash syntax sqlite

我跟随着漂亮的SLite&在ZetCode的Ruby教程已经遇到了一个愚蠢的问题。到底发生了什么?

rescue SQLite3::Exception => e 

    puts "Exception occured"
    puts e

我从概念上得到了正在发生的事情:如果引发异常,它将被打印在屏幕上。但具体是什么语法?

SQLite3::Exception => e 

还有另一个简单的例子,我可以像这样使用哈希火箭吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

rescue语句对该表示法有不同寻常的用法。这意味着“将SQLite3::Exception类型的异常捕获到变量e”中:

rescue SQLite3::Exception => e

您不需要将异常捕获到变量中,如果不需要它可以省略该部分,并且您也不需要指定异常类型,这将默认为异常库班Exception

语法只与哈希声明巧合地相同,可能是为了促进一致性。这两者没有其他相关性。