IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Modules Perl Discussion :

Instanciation d'objet avec chemin de package composé


Sujet :

Modules Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 7
    Par défaut Instanciation d'objet avec chemin de package composé
    Bonjour,

    voici une classe Test définie dans./impl/Test.pm :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    package impl::Test;
     
    use warnings;
    use strict;
     
    sub new {
      my ( $class ) = @_;
      my $self = {};
      bless( $self, $class );
      return $self;
    }
     
    1;
    **********
    Voici un programme utilisant la classe Test :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    #!/usr/bin/perl
     
    use warnings;
    use strict;
    use impl::Test;
     
    my $test = impl::Test->new();
    **********

    Mon problème : lorsque je remplace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my $test = impl::Test->new();
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my $test = Test->new();
    j'obtiens l'erreur
    Can't locate object method "new" via package "Test" (perhaps you forgot to load "Test"?) at ./fred line 7.
    Je ne comprends pas ce message vu que j'ai utilisé "use impl::Test;" avant d'instancier ma classe !!

    Merci pour votre aide.

  2. #2
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Par défaut
    Ta classe se nomme impl::Test, pas Test... c'est donc tout à fait normal.

    PS : pour poster du code, n'oublie pas d'insérer des balises [CODE] (icône ).

Discussions similaires

  1. Réponses: 7
    Dernier message: 26/07/2010, 15h25
  2. instancier 2 objets avec 1 seul paramétre
    Par Micke7 dans le forum Langage
    Réponses: 6
    Dernier message: 26/03/2009, 15h54
  3. [Plone] Instanciation d'objets créés avec archetype
    Par Beatrix_debutante dans le forum Zope
    Réponses: 3
    Dernier message: 11/10/2006, 17h15
  4. [POO] Instancier un objet avec le nom de la classe
    Par shinchun dans le forum Langage
    Réponses: 4
    Dernier message: 08/06/2006, 13h44
  5. [CR9]état ou sous état avec chemin de l'objet dans la base
    Par cdu dans le forum SAP Crystal Reports
    Réponses: 5
    Dernier message: 18/03/2005, 14h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo