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 :

Initialiser un vector


Sujet :

SL & STL C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par défaut Initialiser un vector
    bonjour à tous;
    Je voudrais initialiser un vector à la création
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    vector<string> V;
    void Init()
    {
      V.push_back("a0");
      V.push_back("a1");
      V.push_back("a2");
    }
    Malheureusement ça ne marche pas;
    Quelqu'un parmi nos cher(e)s amis auraient une réponse à mon interrogation.
    Merci pour votre aide.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 299
    Par défaut
    Salut, je pense que ca ne marche pas car le vector V n'est pas déclaré dans ta fonction Init.
    Je pense que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    void Init(vector & V)
    {
    blabla;
    }
    marcherait.

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 299
    Par défaut
    Re salut,
    effectivement, voici un code qui marche

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    #include<iostream>
    using namespace std;
     
    #include<vector>
    #include<string.h>
     
    void Init(vector<string> & v)
    {
        v.push_back("a0");
        v.push_back("a1");
        v.push_back("a2");
    }
     
    int main()
    {
     
        vector<string> V;
        Init(V);
        cout<<V[0]<<" "<<V[1]<<" "<<V[2]<<endl;
        return 0;
    }

  4. #4
    Membre éprouvé
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Décembre 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Décembre 2005
    Messages : 109
    Par défaut
    Ton code fonctionne bien chez moi ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    #include <vector>
    #include <string>
     
    using namespace std;
     
    vector<string> V;
    void Init()
    {
      V.push_back("a0");
      V.push_back("a1");
      V.push_back("a2");
    } 
     
    int main(void)
    {
    	Init();
    	return 0;
    }
    Quel est le message d'erreur que tu rencontres ?

  5. #5
    Membre émérite Avatar de reggae
    Profil pro
    Inscrit en
    Août 2005
    Messages
    773
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2005
    Messages : 773
    Par défaut
    Tu viens de déclarer une variable globale, elle marche dans tout ton fichier source...
    Par contre si elle avait été déclarée dans main(), elle aurait dû faire partie de
    la liste des arguments.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 105
    Par défaut
    En fait mon erreur était du simplement à une coquille, au lieu d'écrire push_back, j'avais oublié le 'c' en écrivant push_bak.
    Merci infiniment pour votre aide. Elles sont toujours utiles.
    Encore une fois Merci.

  7. #7
    Membre éclairé Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Par défaut
    oublie pas le [résolu] si ton prob est OK

Discussions similaires

  1. Problème d'initialisation de vector, C++11
    Par Armulis dans le forum C++
    Réponses: 13
    Dernier message: 08/07/2014, 16h26
  2. Réponses: 3
    Dernier message: 03/02/2011, 18h09
  3. Réponses: 8
    Dernier message: 12/12/2009, 21h24
  4. Initialiser un vector lors de sa création
    Par vince3147 dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 17/08/2007, 14h17
  5. Comment initialiser un vector à sa création ?
    Par Clad3 dans le forum SL & STL
    Réponses: 7
    Dernier message: 10/12/2004, 15h01

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