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

Discussion :

l'opérateur This(langage algorithmique)

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Par défaut l'opérateur This(langage algorithmique)
    Bonsoir à tous,

    Voilà j'arrive à la notion de l'opérateur this que j'ai du mal à apprivoiser. Mon livre n'est pas très clair à ce sujet et les explications que j'ai pu glaner sur le net ne m'ont pas convaincu
    Bizarrement je comprend à peu près de quoi il retourne, mais je n'arrive pas à m'en faire une notion vraiment claire et net.


    Comment expliqueriez-vous en détails à votre façon ce qu'est l'opérateur This ?

    Je m'excuse pour la précarité de mon annonce mais ca m'embêtais un peu de devoir réécrire et refaire les schémas de mon livre mais si c'est la seule solution pour bien me faire comprendre je le ferais

    Merci à vous de votre précieuse aide

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Par défaut
    C'est simplement un pointeur sur l'objet courant.
    Donc quand tu utilises this dans une classe, ce sera un pointeur sur l'objet qui appelle la méthode.

  3. #3
    Membre très actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Par défaut
    Salut Garulfo

    Je pense avoir compris mais ce qui m'a induit en erreur c'est qu'il existe 2 cas pour l'opérateur this:
    -1 cas facultatif d'utilisation
    -1 cas obligatoire d'utilisation

    Dans le cas ou l'opérateur serais facultatif je trouve que ca induit plus en erreur qu'autre chose que de l'utilisé finalement car si je crée une méthode a savoir

    Classe Date comporte méthode Date(paramDate: date)
    Debut
    this.jour <-- paramDate.jour;
    this.mois <-- paramDate.mois;
    this.année <-- paramDate.année;
    Fin

    puisque quand on l'utilise

    d1 <-- new date(6,6,2000);

    La méthode reconnu quel paramètre changer puisque elle pointe vers la variable qui elle même pointe vers l'instance donc effectivement l'opérateur this est facultatif dans ce cas.Mais bon pourquoi....

    Par contre pour le cas ou l'aopérateur this serais obligatoire là ok je comprend.
    Quand un paramètre de méthode possède le même nom qu'un attribut d'une instance la confusion est net et cela ne marcherais pas si on utilise pas this.

    Je suis surement pas très doué mais le livre aurais pu mieux expliquer je trouve.Suis-je bien dans le vrai Garulfo ?

    Si oui dans ce cas excuse moi de t'avoir dérangé pour si peu alors

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Par défaut
    Je ne comprends pas bien ton problème
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Classe Date comporte méthode Date(paramDate: date)
    Debut
    this.jour <-- paramDate.jour;
    this.mois <-- paramDate.mois;
    this.année <-- paramDate.année;
    Fin
    ici this est probablement facultatif, mais l'écrire permet de garder une cohérence d'écriture et une certaine lisibilité accrue.

    C'est donc un plus. Pourquoi s'en passer ? Parce que ça va augmenter très légèrement le temps de programmation (3x5 caractères de plus) ? Il ne faut jamais privilégier l'économie à la lisibilité.

    Mais y a-t-il autre chose que je n'aurais pas saisi ?

  5. #5
    Membre très actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Par défaut
    Non mais en fait j'ai saisi la notion de This c'est juste que le livre a ce propos n'est pas très claire et que pour moi cela était plus claire sans this qu'avec...

    Mais si tu me dit que je suis spécial ou bizarre je te croyerais volontier

    Donc problème résolu.Sinon les accesseurs pas de soucis et j'attaque bientot les associations alors peut être entendra tu parle de moi pour ca sinon c'est que j'aurais tous capté du 1e coup

    GOOD VIBES

  6. #6
    Membre éprouvé
    Inscrit en
    Juin 2009
    Messages
    138
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Juin 2009
    Messages : 138
    Par défaut
    Citation Envoyé par miltone Voir le message
    Mais si tu me dit que je suis spécial ou bizarre je te croyerais volontier
    GOOD VIBES
    Je ne dirai pas bizarre... Chacun ses petites habitudes
    Pour ma part, je persiste à écrire this lorsque je code.
    Je trouve cela plus lisible, et on voit ainsi directement que c'est un attribut, ou une méthode de la classe. Surtout lorsqu'on reprend un code existant.

    De plus, je trouve que comprendre la notion du this est assez primordiale en Java, ce qu'a l'air de pas si bien faire ton livre. C'est dommage.

    Citation Envoyé par miltone Voir le message
    Comment expliqueriez-vous en détails à votre façon ce qu'est l'opérateur This ?
    Pour ma part, je le décris en tant que "instance courante" ou "objet que l'on manipule".

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

Discussions similaires

  1. opérateur This .
    Par alfred5 dans le forum C++
    Réponses: 6
    Dernier message: 04/12/2010, 20h54
  2. langage algorithmique et base de données
    Par harf18 dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 31/03/2009, 15h37
  3. opérateur TIMES langage algébrique
    Par gentelmand dans le forum Débuter
    Réponses: 4
    Dernier message: 31/12/2007, 11h48
  4. le opérateur this
    Par Methode dans le forum Langage
    Réponses: 1
    Dernier message: 06/04/2007, 16h12
  5. [VB6]traduire vb6 en langage algorithmique
    Par chagala dans le forum VB 6 et antérieur
    Réponses: 15
    Dernier message: 04/06/2006, 15h20

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