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

C++ Discussion :

Question générale sur les affectations ?


Sujet :

C++

  1. #1
    Futur Membre du Club
    Inscrit en
    Octobre 2003
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 10
    Points : 9
    Points
    9
    Par défaut Question générale sur les affectations ?
    Bonjour,

    Voilà, je me pose une question toute bete.

    Y'a-t-il une différence au point de vu de l'éxécution du programme, de sa rapidité, etc... entre les 2 petits codes suivants :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    int i;
    i = fonction();
    et


    Donc, y'at-t-il une grande différence au point de vu traitement, enfin de la rapidité d'éxéction et tout entre ces 2 codes ?


    Merci d'éclairer ma curiosité

  2. #2
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 852
    Points : 4 759
    Points
    4 759
    Par défaut
    Il n'y a aucune différence en terme de temps au niveau des 2 opérations. Ta première écriture permet de faire du code mieux structuré délimitant les déclarations et les affectations. La 2ème permet de faire du code plus compact mais sans doute moins lisible.

    @ ++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  3. #3
    Membre actif Avatar de Grulim
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    234
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 234
    Points : 288
    Points
    288
    Par défaut Re: Question générale sur les affectations ?
    Citation Envoyé par Clemaster
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    int i;
    i = fonction();

    Donc, y'at-t-il une grande différence au point de vu traitement, enfin de la rapidité d'éxéction et tout entre ces 2 codes ?
    sur cette exemple, non. par contre sur des objets et non sur des types primitifs, il peut y avoir une différence.

  4. #4
    Futur Membre du Club
    Inscrit en
    Octobre 2003
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 10
    Points : 9
    Points
    9
    Par défaut
    Re,

    Merci de vos précisions

    Je marque "Résolu".

  5. #5
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Il y a tout de même une différence non négligeable, autre que la performance : la première écriture appelle le constructeur par défaut puis l'opérateur d'affectation, la seconde appelle le constructeur par copie (pour les types non primitifs bien sûr).
    Si on a bien codé sa classe ça ne devrait pas faire de différence autre que les performances, mais parfois il est important de le savoir.

  6. #6
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 275
    Points : 10 985
    Points
    10 985
    Par défaut
    La seconde approche est préférée en C++.
    - car c'est celle qui est très chaudement recommandée pour les objets
    - car par extension, on sait les lire
    - car ça permet de retrouver immédiatement à quel moment est initialisée pour la première fois une variable
    - car cela ne laisse aucune variable non initialisée. !!
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

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

Discussions similaires

  1. question générale sur les librairies
    Par adiiii dans le forum C++
    Réponses: 0
    Dernier message: 11/07/2008, 13h48
  2. Questions générales sur les services NT
    Par scougirou dans le forum Windows Serveur
    Réponses: 3
    Dernier message: 16/03/2007, 15h50
  3. [Hibernate 3] Questions générales sur les performances
    Par hugo123 dans le forum Hibernate
    Réponses: 7
    Dernier message: 13/12/2006, 17h02
  4. Question générales sur les IG en Java
    Par link182 dans le forum Interfaces Graphiques en Java
    Réponses: 3
    Dernier message: 18/02/2006, 11h42
  5. question générale sur les conteneurs
    Par tut dans le forum C++
    Réponses: 6
    Dernier message: 01/09/2004, 10h11

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