[自己解决][求助]无聊玩了下函数声明,这个警告如何处理?

[自己解决][求助]无聊玩了下函数声明,这个警告如何处理?

sub parseGFF3($);
$item_ref=parseGFF3($_);

sub parseGFF3 {
    my $string = shift;
    。。。
    return \%feat;
}

结果是:Prototype mismatch: sub main::parseGFF3 ($) vs none at gff2.pl line 82.
82就是最后那个大括号。

这是什么原因?
——————————————————————————
自己搞忘了,前面声明和后面的函数定义要一致嘛,改sub parseGFF3($) { 就对了……

sub parseGFF3($);是什么意思?


QUOTE:
原帖由 小公猫 于 2008-7-5 14:37 发表
sub parseGFF3($);是什么意思?

就是声明parseGFF3只接受一个$参数。
sub parseGFF3($$);的话,就要用parseGFF3 $a, $b来调用了。
不声明还不是一样用么?呵呵。。。虽然不太严格。。。
sub parseGFF3 {
    my $string = shift;
    。。。
    return \%feat;
}
改成
sub parseGFF3 ($){