Classe :: Membro :: Hash

Classe :: membro :: hash é um módulo Perl para facilitar o desenvolvimento do módulo.
Baixe Agora

Classe :: Membro :: Hash Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Preço:
  • FREE
  • Nome do editor:
  • Torsten Fortsch
  • Site do editor:
  • http://search.cpan.org/~cmungall/

Classe :: Membro :: Hash Tag


Classe :: Membro :: Hash Descrição

Class :: Membro :: HASH é um módulo Perl para fazer o desenvolvimento do módulo mais fácil. Class :: Membro :: HASH é um módulo Perl para fazer o desenvolvimento do módulo easier.SYNOPSIS MyModule pacote; uso Class :: Membro :: HASH qw / member_A member_B -CLASS_MEMBERS /; ou pacote MyModule; uso Class :: Membro :: GLOB qw / member_A member_B -CLASS_MEMBERS /; ou pacote MyModule; qw uso Class :: Membro / member_A member_B -CLASS_MEMBERS /; ou pacote MyModule; uso Class :: Membro :: Dinâmica qw / member_A member_B -CLASS_MEMBERS /; instâncias de classe Perl são hashes ou bolhas e variáveis de membro armazenar principalmente abençoado seja como "$ self -> {membername}" ou "{$ * $ self} {membername }", respectivamente. Isto é muito propenso a erros quando você começa a desenvolver classes derivadas baseadas em tais módulos. O desenvolvedor da classe derivada deve observar as variáveis membro da classe base para evitar conflitos de nome. Para evitar que as lojas de "Class :: Membro :: xxx" variáveis de membro em seu próprio namespace antecedendo o nome do pacote para o nome da variável, por exemplo, pacote Meu :: New :: Módulo; uso Class :: Membro :: HASH qw / member_A memberb /; armazenará "member_A" como "$ self -> { 'Meu :: New :: Module :: member_A'}". Para tornar o acesso a esses membros mais fácil que exporta funções de acesso para o namespace chamadores. Para acesso "member_A" você simplesmente chamar. $ Self-> member_A; # Acesso de leitura $ self-> member_A ($ novo_valor); # Acesso de gravação $ self-> member_A = $ novo_valor; # Acesso de gravação (usado como lvalue) "Class :: Membro :: HASH" e "Class :: Membro :: GLOB" são usados se os objetos são hash ou GLOB referências. Mas às vezes você não sabe se suas instâncias são bolhas ou hashes (Considere developement de classes derivadas onde a classe base é susceptível de ser alterado.). Neste caso de uso "Class :: Membro" e os métodos são definidos em tempo de compilação para lidar com cada tipo de objectos, bolhas e hashes. Mas o primeiro acesso a um método redefine-lo de acordo com o tipo de objeto real. Assim, o primeiro acesso vai durar um pouco mais longo, mas todas as chamadas subsequentes são executados na mesma velocidade como "Class :: Membro :: GLOB" ou "Class :: Membro :: HASH". "Class :: Membro :: Dinâmica" é usado se os objetos podem ser bolhas e hashes, ao mesmo tempo. O tipo real é determinada em cada acesso e a ação apropriada seja tomada. Além de nomes de membro existe (por agora) opção que pode ser dada: "-CLASS_MEMBERS". Ele permite que a função "import ()" criar uma matriz chamada @CLASS_MEMBERS em namespace do autor da chamada que contém os nomes de todos os métodos que ele define. Assim, você pode criar um contructor que espera nomeado parâmetros, onde cada nome corresponde a um membro da classe: o uso de Classe :: Membro qw / member_A member_B -CLASS_MEMBERS /; nossos @CLASS_MEMBERS; sub nova {my $ parent = shift; my $ class = ref ($ pai) || $ Pai; meus $ i = abençoe {} => $ class; my% o = @ _; if (ref ($ pai)) {# herdar primeira foreach my $ m (@CLASS_MEMBERS) {$ I -> $ m = $ pai -> $ m; }} # Seguida, substituir com parâmetros nomeados foreach my $ m (@CLASS_MEMBERS) {$ I -> $ m = $ o $ {m} if (existe $ o $ {m}); } Return $ I; } Requisitos: · Perl.


Classe :: Membro :: Hash Software Relacionado