| Ŭ·¡½º :: ÇÁ·ÎÅä ŸÀÔ Å¬·¡½º :: ÇÁ·ÎÅä ŸÀÔÀº PerlÀÇ ºü¸¥ ÇÁ·ÎÅä ŸÀÔ ±â¹ÝÀÇ OO ÇÁ·Î±×·¡¹ÖÀÔ´Ï´Ù. |
Áö±Ý ´Ù¿î·Îµå |
Ŭ·¡½º :: ÇÁ·ÎÅä ŸÀÔ ¼øÀ§ ¹× ¿ä¾à
- ƯÇã:
- Perl Artistic License
- °Ô½ÃÀÚ À̸§:
- Ned Konz and Toby Ovod-Everett
- °Ô½ÃÀÚ À¥»çÀÌÆ®:
- http://search.cpan.org/~teverett/Class-Prototyped-1.10/lib/Class/Prototyped.pm
Ŭ·¡½º :: ÇÁ·ÎÅä ŸÀÔ Å±×
Ŭ·¡½º :: ÇÁ·ÎÅä ŸÀÔ ¼³¸í
Class :: Prototypeed´Â PerlÀÇ ºü¸¥ ÇÁ·ÎÅä ŸÀÔ ±â¹Ý OO ÇÁ·Î±×·¡¹ÖÀÔ´Ï´Ù. Class :: Prototypeed´Â Perl.synopsis »ç¿ëÀÇ ºü¸¥ ÇÁ·ÎÅä ŸÀÔ ±â¹Ý OO ÇÁ·Î±×·¡¹ÖÀÔ´Ï´Ù. Ŭ·¡½º :: ÇÁ·ÎÅä ŸÀÌÇÎ µÈ ': EzAccess'; $, = ''; $ = "n"; MY $ P = CLASS :: Prototyped-> New (field1 => 123, sub1 => sub {print "ÀÌ°ÍÀº p"}, sub2 => sub {print "sub1}; p"}). $ p-> sub1; $ P-> Çʵå 1À» ÀμâÇϽʽÿÀ. $ p-> field1 ( '»õ·Î¿î °Í'); $ P-> Çʵå 1À» ÀμâÇϽʽÿÀ. MY $ P2 = Ŭ·¡½º :: ÇÁ·ÎÅä ŸÀÌÇÎ µÈ :: NEW ( 'parent *'=> $ p, field2 => 234, sub2 => sub {print "ÀÌ°ÍÀº p2"}ÀÇ sub2)ÀÔ´Ï´Ù). $ P2-> SUB1; $ p2-> sub2; Print Ref ($ P2), $ P2-> FIELD1, $ P2-> FIELD2; $ P2-> FIELD1 ( '¹× ÀÌÁ¦´Â ´Ù¸¥ °ÍÀ» À§ÇØ'); Àμâ ref ($ p2), $ p2-> field1; $ P2-> addslots (sub1 => sub {print ") p2"}ÀÇ sub1ÀÔ´Ï´Ù); $ P2-> SUB1; Print Ref ($ P2), "½½·ÔÀÌÀÖ´Â", $ P2-> ¹Ý¿µ -> ½½·Ô À̸§; $ P2-> ¹Ý¿µ -> Æ÷ÇÔ ( 'xx.pl'); # $ P2ÀÇ ÆÐÅ°Áö Àμâ REF ($ P2)¿¡ xx.pl Æ÷ÇÔ, "½½·ÔÀÌ ÀÖÀ¸¸ç $ P2-> ¹Ý¿µ -> ½½·Ô À̸§; $ p2-> aa (); # Æ÷ÇÔ µÈ ÆÄÀÏ xx.pl $ P2-> DeleteSlots ( 'sub1')¿¡¼ AA¸¦ È£ÃâÇÕ´Ï´Ù. $ P2-> SUB1; ¿ä±¸ »çÇ× : ¡¤ Perl.
Ŭ·¡½º :: ÇÁ·ÎÅä ŸÀÔ °ü·Ã ¼ÒÇÁÆ®¿þ¾î