ch15.061_prob

来自「Perl Best Practices the source code」· 061_PROB 代码 · 共 52 行

061_PROB
52
字号
################################################################################ Code fragment (NOT RECOMMENDED) from Chapter 15 of "Perl Best Practices" ####     Copyright (c) O'Reilly & Associates, 2005. All Rights Reserved.      ####  See: http://www.oreilly.com/pub/a/oreilly/ask_tim/2001/codepolicy.html  ################################################################################# Standard modules...no strict;use warnings;use IO::Prompt;use Carp;use English qw( -no_match_vars );use Data::Alias;use Readonly;package Dogtag;use Class::Std::Utils;{    # Attributes...    my %name_of;    my %rank_of;    my %serial_num_of;     # The usual inside-out constructor...    sub new {        my ($class, $arg_ref) = @_;         my $new_object = bless anon_scalar(), $class;         # Now allocating serial numbers polymorphically...        $serial_num_of{ident $new_object} =  $class->_allocate_serial_num();         return $new_object;    }     # Override this method in any derived class that needs a    # different serial number allocation mechanism...    sub _allocate_serial_num {        return new Unique::ID;    }}use Data::Dumper 'Dumper';warn Dumper [ Dogtag->new() ];package Unique::ID;sub new { return 1 }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?