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

Langage Perl Discussion :

[langage] "@$" Quel est ce type de variable?


Sujet :

Langage Perl

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    161
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 161
    Points : 116
    Points
    116
    Par défaut [langage] "@$" Quel est ce type de variable?
    Bonjour,
    J'ai pris les sources d'un script dans lequel il y a une variable @$msg. (cf ici)
    Et j'ai du mal à l'utiliser dans un parser, je cherche donc ce qu'est ce genre de variable pour comprendre comment l'utiliser.
    Merci d'avance

  2. #2
    Membre actif
    Inscrit en
    Février 2005
    Messages
    167
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 167
    Points : 203
    Points
    203
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $toto = [2, 4, 6];
    Ici, $toto est une référence à un array anonyme. On peut aussi l'obtenir en prenant la référence d'un array nommé :

    @$toto, donc, est l'expression qui parle des éléments dans leur ensemble.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    print join( '|', @$toto );
    # donne 2|4|6
    On obtiens le premier élément d'une référence à un array avec la flèche:


  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    161
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 161
    Points : 116
    Points
    116
    Par défaut
    Si j'ai bien compris c'est un genre d'objet contenant un tableau?

  4. #4
    Membre actif
    Inscrit en
    Février 2005
    Messages
    167
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 167
    Points : 203
    Points
    203
    Par défaut
    Oui, c'est ça plus ou moins. On peut passer l'objet $msg à droit à gauche sans copier tout le bazar. Si tu penses à des pointeurs en C tu seras pas loin. Mais attention c'est opaque. Ce n'est parce que tu affectes 'ARRAY(0x0193f3c36)' à un scalar que tu vas tomber sur l'array qui existe à cet emplacement en mémoire.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    161
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 161
    Points : 116
    Points
    116
    Par défaut
    Ok cool merci j'ai compris
    Je pensais bien à un pointeur

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Quel est le type du réseau (Wifi, Ethernet, )
    Par zuzuu dans le forum Windows
    Réponses: 1
    Dernier message: 29/09/2007, 21h23
  2. quel est le type d'un menu déroulant <select>?
    Par Henry9 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 27/08/2007, 17h22
  3. quel est le type pour une image?
    Par kitiara999 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 06/12/2006, 18h07
  4. [Conception] quel est le type de variable a choisir?
    Par King_T dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 29/05/2006, 00h27
  5. Quel est le type retourné ?
    Par Rupella dans le forum C
    Réponses: 4
    Dernier message: 30/11/2005, 14h01

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