8

我刚刚在代码审查中第一次被要求检查对Perl 模块GetOptions()函数的调用的返回代码。Getopt::Long

我不记得曾经见过这样的GetOptions()功能测试。

那么人们通常不检查此函数的返回码是否有特定的原因?

4

1 回答 1

11

人们不检查GetOptions函数返回值的一个原因是他们想在不使用Getopt::Long的情况下处理未指定的选项(通过在调用@ARGV后直接 解析)。GetOptions或者,也许他们只是想忽略未指定的选项。或者,也许他们没有意识到该GetOptions功能可能会失败。

我总是检查返回值,因为我喜欢在命令行中发现拼写错误。检查的标准方法是使用Pod::Usage Core 模块(参见 POD 示例代码)。另请参阅:动态二重奏 -- 或 -- Holy Getopt::Long、Pod::UsageMan!

于 2012-07-17T16:18:29.890 回答