我刚刚在代码审查中被要求检查Getopt :: Long Perl模块的GetOptions()函数调用的返回代码.
我记不起看过GetOptions()函数的这样一个测试.
那么人们通常不会检查此函数的返回码是否有特定原因?
解决方法
人们不检查GetOptions函数返回值的一个原因是他们想要在不使用
Getopt::Long的情况下处理未指定的选项(通过在调用GetOptions之后直接解析@ARGV).或者,也许他们只是想忽略未指定的选项.或者,也许他们不知道GetOptions函数可能会失败.
我总是检查返回值,因为我喜欢在命令行上捕获拼写错误.标准的检查方法是使用Pod::Usage核心模块(参见POD示例代码).另见:The Dynamic Duo –or– Holy Getopt::Long,Pod::UsageMan!