Perl语言全面编译(三)

作者:凯旋网络来源:凯旋网络
际的开发总是相当无畏的,在这里是为了方便教大家,所以不要什么程序都要对象。 
IO.pm: 
package IO; 

my IN; 

sub new { 

         my $class = shift; 

         IN = @_; 

         my $self={}; 

         bless $self,$class; 

         return $self; 

} 

  

sub do {#操作对象函数 

         my $self=shift; 

         defined ( Perl语言全面编译(三) - 凯旋网络

Perl语言全面编译(三)

作者:凯旋网络来源:凯旋网络
content
  • 广告推荐
     = <>);#启动Shell得取输入信息 

           chomp;#去掉无用的字符 

                     s/^\s //;#过滤危险字符 

                 my $cmd =  Perl语言全面编译(三) - 凯旋网络

    Perl语言全面编译(三)

    作者:凯旋网络来源:凯旋网络
    content
  • 广告推荐
    ;#复制量 

               return $cmd;#返回量 

    } 

      

    1; 
     
     
    CMD.pm: 

     package CMD; 

    my IN; 

    sub new { 

             my $class = shift; 

             IN = @_; 

             my $self={}; 

             bless $self,$class; 

             return $self; 

    } 

      

    sub do {#操作对象函数 

    my $self=shift; 

      my $cmd = @_ ;#传入调用程序的命令 

    while (){#执行循环,直到退出 

             if ($cmd eq ''ver'') { 

                       print "Tanshuai Command Shell v.1.0.0.001225b\n"; 

                       print "(C)Copyright Tanshuai.Com 1997-2001\n"; 

                       print ''EMAIL:tanshuai@BIGFOOT.COM''; 

                       print "\n"; 

                       &do; 

             } 

             elsif ($cmd eq ""){ 

                       &do; 

                       exit; 

             } 

             elsif ($cmd eq ''exit''){ 

                       print "Exit System"; 

                       exit; 

             } 

             elsif ($cmd eq ‘dir''){ 

                       use System;#使用包System 

    my $sys = System ::new ;#建立基于System包的对象$sys 

    $sys->do($cmd) ;#操作对象sys传送命令 

                       &do; 

                       } 

             else { 

              print " Command Not Found "; 

                       &do; 

                       } 

             } 

    } 

    } 

     1;
     
    System.pm: 
    Package System; 

    my IN; 

    sub new { 

             my $class = shift; 

             IN = @_; 

             my $self={}; 

             bless $self,$class; 

             return $self; 

    } 

      

    sub do {#操作对象函数 

             my $self=shift; 

    my $cmd = @_ ; 

    system($cmd) ;#使用System函数操作系统,启动dir命令 

      

      

    1; 
     
    以上各个模块(对象)已经建立完毕,我们现在只需要设计一个简单的操作对象程序。这个时候你发现搞对象原始是如此简单:) 
    Shell.pl 主程序: 
    use IO;#调用~模块(对象) IO.pm 

    use CMD;#调用~模块(对象) CMD.pm 

      

      

    my $IO = IO::new;#创建对象~$IO 

    my $CMD = CMD::new;#创建对象~$CMD 

      

      

    my $GetInput = $IO->do;#从对象IO得到输入信息; 

    $CMD->do("$GetInput");#将得到的输入信息发
  • 广告推荐