当我运行此操作时,为什么我没有获得Attempting to inherit from yourself generates a warning.
(base#DIAGNOSTICS)?
#!/usr/bin/env perl
use warnings;
use diagnostics;
use 5.012;
{
package MyWebServer;
use HTTP::Server::Simple::CGI;
use base qw(HTTP::Server::Simple::CGI);
...
答案 0 :(得分:5)
呃,因为你不是想继承自己?
就是这样:
#!/usr/bin/env perl
use warnings;
use diagnostics;
use 5.012;
{
package HTTP::Server::Simple::CGI;
use base qw(HTTP::Server::Simple::CGI);
...
基础应该逐步取消,以支持更新,更少花哨的parent。
答案 1 :(得分:4)
我怀疑这是一个文档错误。
测试文件t/base.t
显示此类型的方案以获取警告:
use warnings;
use diagnostics;
use 5.012;
package Foo;
use base 'Foo';
__END__
Class 'Foo' tried to inherit from itself
您可以修补POD并将其作为Bug Report提交。