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

Langage C++ Discussion :

Passage de tableau de class ?


Sujet :

Langage C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Bio-informaticienne
    Inscrit en
    Septembre 2009
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Bio-informaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2009
    Messages : 97
    Par défaut Passage de tableau de class ?
    Alors voila mon petit probleme, je doit creer un programme capable de gerer des location de film.
    Pour le moment je ne suis pas tres avancer mais je bloque sur une connerie...

    J'ai mon main :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #include <string.h>
    #include <fstream>
    #include <iostream>
    #include <stdio.h>
    #include "GestionFilm.h"
     
     
    int main(void) {
        GestionFilm gf;    
        gf.lectureFichier("Film.txt");
    }
    J'ai Film.h :

    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
    #ifndef FILM_H
    #define FILM_H
    #include <string.h>
     
    using namespace std;
     
    class Film {
        private:
            int numFilm;
            string titre;
            string langue;
            int nbDispo;
    };
     
    #endif
    Et finalement j'ai GestionFilm.h :
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    #include <fstream>
    #include <iostream>
    #include <stdio.h>
    #include <string.h>
    #include "Film.h"
     
    using namespace std;
     
    const int MAXNBFILM = 100;
    class GestionFilm {
        private :
            Film tabFilm[MAXNBFILM];
        public : 
            void lectureFichier(string fichier,Film tabFilm[], int MAXNBFILM);
    };
     
    // Recoi le nom du fichier a traiter et remplie le tableau de film
    void GestionFilm::lectureFichier(string  fichier, Film  &tab, int taille) {
        ifstream ffilm((char*)fichier.c_str());
     
        if ( ffilm ) {
            string ligne; // chaque ligne lue
            int index = 0;
            while ( getline( ffilm, ligne ) ) { // Pour chaque ligne
                char *token;
                token = strtok((char*)ligne.c_str(),";");
                int i = 0;
                while (token != NULL) {
                   //printf("The token is:  %s\n", token);
                   switch(i) {
                       case 0 :
     
                           printf("0: %s\n",token);
                           break;
                       case 1 :
                           printf("1: %s\n",token);
                           break;
                       case 2 :
                           printf("2: %s\n",token);
                           break;
                       case 3 :
                           printf("3: %s\n",token);
                           break;
                       default:
                            i = 0;
                            break;
                   }
                   ++i;++index;
                  token = strtok(NULL,";");
                }
            }
        }
    }
    J'aimerais passer le tableau de film a la fonction LectureFilm, mais impossible je n'y arrive definitivement pas, j'ai essayé pas mal de chose et tombe suovent sur l'erreur suivante :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    In file included from part2.cpp:5:
    GestionFilm.h:19: erreur: prototype forvoid GestionFilm::lectureFichier(std::string, Film&, int)’ does not match any in class ‘GestionFilm’
    GestionFilm.h:14: erreur: candidate is: void GestionFilm::lectureFichier(std::string, Film*, int)
    part2.cpp: In function ‘int main()’:
    part2.cpp:17: erreur: no matching function for call to ‘GestionFilm::lectureFichier(const char [9])’
    GestionFilm.h:14: note: candidats sont: void GestionFilm::lectureFichier(std::string, Film*, int)
    J'ai vu qu'il etait possible d'utiliser un vecteur, mais l'une des contrainte de l'enoncer et d'avoir un tableau de film !!!

    Est ce que quelqu'un pourrait m'aider, je tourne en rond....

    Ah je precisse le fichier Film.txt est du type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    aaa;bbbb;cccc;ddd
    eee;ffffff;ddd;rrr

  2. #2
    Membre confirmé
    Femme Profil pro
    Bio-informaticienne
    Inscrit en
    Septembre 2009
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Bio-informaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2009
    Messages : 97
    Par défaut
    Bon chercher pas mon problem vien de l'appel a la methode !!!

    En fait j'aurais du avoir un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #include <string.h>
    #include <fstream>
    #include <iostream>
    #include <stdio.h>
    #include "GestionFilm.h"
     
     
    int main(void) {
        GestionFilm gf;    
        gf.lectureFichier("Film.txt",gf.gettabFilm);
    }
    Et

    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
    23
    24
    25
    #include <fstream>
    #include <iostream>
    #include <stdio.h>
    #include <string.h>
    #include "Film.h"
     
    using namespace std;
     
    const int MAXNBFILM = 100;
    class GestionFilm {
        private :
            Film tabFilm[MAXNBFILM];
        public : 
            void lectureFichier(string fichier,Film *tabFilm);
            Film* gettabFilm();
    };
     
    Film*  GestionFilm::gettabFilm() {
        return this->tabFilm;
    }
     
    // Recoi le nom du fichier a traiter et remplie le tableau de film
    void GestionFilm::lectureFichier(string  fichier, Film  *tab) {
    .....
    }

    seulement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Film*  GestionFilm::gettabFilm() {
        return this->tabFilm;
    }
    ne semble pas etre correct... j'ai une erreur du type :

    conversion from '<unresolved overload function type>' to non-scalar type 'Film' requested

    Une idee ?

  3. #3
    Invité
    Invité(e)
    Par défaut
    Dans ton main rajoute des parenthèses lors de l'appel à la méthode gettabfilm

  4. #4
    Membre confirmé
    Femme Profil pro
    Bio-informaticienne
    Inscrit en
    Septembre 2009
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Bio-informaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2009
    Messages : 97
    Par défaut
    Merci .

    Ca fonctionne.

Discussions similaires

  1. [Débutant] passage de tableau en paramètre (sub ou classe)
    Par patrickvier dans le forum VB.NET
    Réponses: 1
    Dernier message: 24/10/2012, 17h08
  2. Passage d'un tableau de class perso
    Par Sebeee dans le forum Services Web
    Réponses: 1
    Dernier message: 22/03/2011, 14h56
  3. [Info]Passage d'applet à une classe
    Par adilou1981 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 02/08/2005, 14h12
  4. Réponses: 3
    Dernier message: 19/05/2005, 10h46
  5. passage de tableau 2D a une fonction
    Par watashinoitadakimasu dans le forum C
    Réponses: 2
    Dernier message: 11/09/2003, 02h33

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