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 :

int x=exp(2*y); return x; OU return(exp(2*y); ?


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de ttone
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    589
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 589
    Par défaut int x=exp(2*y); return x; OU return(exp(2*y); ?
    Quel est le plus sûr ? quel est le plus rapide ?

  2. #2
    Expert confirmé
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Par défaut
    A mon avis ça n'a franchement aucune importance d'utiliser l'un ou l'autre ... pourquoi te préoccuper de cela ?

  3. #3
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 476
    Par défaut
    Citation Envoyé par ttone Voir le message
    Quel est le plus sûr ? quel est le plus rapide ?
    C'est rigoureusement la même chose. Si x n'est pas utilisée ailleurs dans ta fonction, elle va être littéralement anihilée par le compilo. Et si elle ne l'était pas, ça ne servirait à rien de déclarer un registre rien que pour le renvoyer. Ta variable n'importe donc rien, ni sémantiquement, ni techniquement.

    Opte pour la seconde forme.

  4. #4
    Membre éclairé Avatar de ttone
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    589
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 589
    Par défaut
    elle va être littéralement anihilée par le compilo
    Ok, voilà qui est purement résolu
    Merci.

  5. #5
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Citation Envoyé par Obsidian Voir le message
    C'est rigoureusement la même chose. Si x n'est pas utilisée ailleurs dans ta fonction, elle va être littéralement anihilée par le compilo. Ta variable n'importe donc rien, ni sémantiquement, ni techniquement.

    Opte pour la seconde forme.
    Au risque de vous contredire , je dirai "opte pour la première forme".

    Sémantiquement, aucune différence, on est d'accord.

    Visuellement, la 1ere forme est plus lisible.

    Si tu dois debugger la fonction, tu ne peux pas connaitre le résultat que tu vas retourner dans ta fonction alors qu'avec une variable intermédiaire, tu pourras la voir.

    En ce qui concerne le mode release, il y a de fortes chances que l'optimiseur fasse son boulot et que la variable intermédiaire disparraisse donc "forme 1" ou "forme 2", aucune différence.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  6. #6
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Le deuxième pour moi, puisque dans le premier cas, on voit explicitement qu'il y a un arrondi effectué.

  7. #7
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Par défaut
    Citation Envoyé par ram-0000 Voir le message
    Si tu dois debugger la fonction, tu ne peux pas connaitre le résultat que tu vas retourner dans ta fonction alors qu'avec une variable intermédiaire, tu pourras la voir.
    Un bon debugger indique les valeurs retournées d'une fonction.
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

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

Discussions similaires

  1. return int d'EJB pour une JSP
    Par couse1 dans le forum Servlets/JSP
    Réponses: 0
    Dernier message: 10/03/2011, 14h34
  2. Réponses: 5
    Dernier message: 06/01/2010, 21h28
  3. [DEBUTANT]Return un tableau de INT
    Par kaizer dans le forum Débuter
    Réponses: 17
    Dernier message: 22/10/2006, 19h05
  4. Réponses: 5
    Dernier message: 12/10/2006, 13h49
  5. 'exit' undefined; assuming extern returning int
    Par petdelascar dans le forum MFC
    Réponses: 2
    Dernier message: 18/10/2005, 12h15

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