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

SL & STL C++ Discussion :

Reinitialliser un vector de double a 0


Sujet :

SL & STL C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de harsh
    Inscrit en
    Février 2005
    Messages
    229
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 229
    Par défaut Reinitialliser un vector de double a 0
    Bonjour,

    Quand je lis la FAQ C++, je vois que la fonction resize appliquer sur un vector d'entier réinitialise les entrees a 0 (en plus de correctement mettre le tableau aux bonnes dimension)

    Comme dans mon cas, je dois reinitialiser mon vector de double a 0 a chaque fin de boucle, je met un resize (taille du vector)... Mais que neni, il ne me reinitialise rien du tout. Je suppose donc que la fonction teste la taille du vector, et que dans le cas ou elle est bonne, il n'y touche pas.

    1) Est ce exact ?
    2) Quelle est la maniere la plus propre et la plus rapide de remettre tout les elements d'un vector de double a 0, une boucle ?

    Merci

  2. #2
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    resize mets à 0 pour les nouvelles valeurs seulement

    le mieux est certainement de faire un clear() [vidage] avant le resize
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  3. #3
    Membre confirmé Avatar de harsh
    Inscrit en
    Février 2005
    Messages
    229
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 229
    Par défaut
    Oui mais faire un clear remet la taille a zero. La memoire est elle alors desallouée?

    Si oui, une simple boucle sur les element ne serait elle pas plus efficace?

  4. #4
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    pas forcément, à toi de tester...

    Il ne me semble pas que la mémoire soit désallouée... mais ça dépend de l'implémentation (donc du compilateur)...
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  5. #5
    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 plus simple, c'est d'utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    std::fill(vecteur.begin(); vecteur.end(); 0.);

  6. #6
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    Ah !

    Merci Milles, je savais bien qu'il y avait une fonction spéciale, mais je n'arrivais plus à m'en souvenir...

    par contre je dirais plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    std::fill(vecteur.begin(), vecteur.end(), 0.);


    [PS : pour le 0. la conversion est pas automatique ?]
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  7. #7
    Membre confirmé Avatar de harsh
    Inscrit en
    Février 2005
    Messages
    229
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 229
    Par défaut
    ... Justement, c'est la question que j'avais zappée (la derniere a ce sujet, promis), quel est le comportement de fill (), une boucle standard, ou est-ce un peu plus malin (si c possible)?

    Merci

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

Discussions similaires

  1. Sorting ArrayList<Vector<String, Double>>
    Par hassanJava dans le forum Collection et Stream
    Réponses: 6
    Dernier message: 09/08/2010, 17h44
  2. [C++]vector et double
    Par vince3320 dans le forum C++
    Réponses: 7
    Dernier message: 28/09/2007, 12h07
  3. Vector et cast en double
    Par javamax dans le forum Langage
    Réponses: 3
    Dernier message: 26/03/2007, 21h21
  4. convertir un double truc[] en vector<double> chose
    Par [Hugo] dans le forum SL & STL
    Réponses: 8
    Dernier message: 06/09/2006, 10h20
  5. Pb de conversion: double[] vers un vector type???
    Par hycsos dans le forum SL & STL
    Réponses: 4
    Dernier message: 15/01/2006, 07h59

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