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 :

Creation d'une classe


Sujet :

C++

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    28
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 28
    Par d�faut Creation d'une classe
    Bonjour � tous,
    j'ai un petit probl�me, voir m�me un gros, vu que je ne connais pas le langage C, C++ , je dois impl�menter le code (je ne sais pas si �a se dit) ci-dessous, de fa�on statique, gr�ce � une classe. Donc si quelqu'un a la gentillesse de m'aider �a serai vraiment tr�s sympa.
    Le code � modifier est le suivant :
    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
    #include <stdio.h>
    #include <conio.h>
     
    #define MAXELEMENTS 100
     
    struct TFile
    {
    int Tab[MAXELEMENTS];
    int iPremier, iDernier;
    };
     
    void initialisefile(TFile *une_file)
    {
    une_file->iPremier = 0;
    une_file->iDernier = 0;
    }
     
    void enfiler (TFile *une_file, int Element)
    {
    une_file->Tab[une_file->iDernier] = Element;
    une_file->iDernier++;
    if (une_file->iDernier == MAXELEMENTS) une_file->iDernier = 0;
    }
     
    int defiler (TFile *une_fille)
    {
    int element_defile;
    element_defile = une_file->Tab[une_file->iPremier];
    une_file->iPremier++;
    if (une_file->iPremier == MAXELEMENTS) une_file->iPremier = 0;
    return element_defile
    }
     
    int filevide (TFile une_file)
    {
    return (une_file.iDernier == une_file.iPremier);
    }

  2. #2
    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 : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par d�faut
    Qu'est-ce qui te pose probl�me exactement ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    28
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 28
    Par d�faut
    Tout me pose probl�me vu que je ne connais pas ce language, je travaille sur VB normalement et l� il faut que je fasse de ce code une classe nomm�e ClassFile par exemple.
    J'ai le type abstrait file (le code que j'ai donn�) et je dois l'impl�menter gr�ce � une classe. Et c'est une implementation statique qu'il faut faire.
    Plus �a va et plus je me m�lange les pinceaux, je craque

  4. #4
    Membre confirm�
    Profil pro
    �tudiant
    Inscrit en
    F�vrier 2007
    Messages
    77
    D�tails du profil
    Informations personnelles :
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 77
    Par d�faut
    Premi�rement, est-ce que tu comprends le code C que tu as donn� dans ton premier message ?

    Si oui, as tu regard� dans les cours (et la FAQ C++) comment cr�e-t-on une classe ?


    Ce que tu dois faire, une fois que tu sauras comment on r�dige une classe en C++, ne devrait pas te para�tre insurmontable, c'est juste une histoire de syntaxe � respecter.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    28
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 28
    Par d�faut
    Non, je ne comprend pas le language C, je l'ai marqu�, j'ai bien essay� avec differents tutoriaux mais je n'ai pas r�ussi

  6. #6
    Membre confirm�
    Profil pro
    �tudiant
    Inscrit en
    F�vrier 2007
    Messages
    77
    D�tails du profil
    Informations personnelles :
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 77
    Par d�faut
    Voil� quelques explications qui pourraient eclaircir un minimum ton chemin :

    Tu vas devoir cr�er une classe que tu dois appeler TFile, cette classe poss�de trois attributs : un tableau de MAXELEMENTS entiers, et deux entiers iPremier et iDernier qui correspondent manifestement aux indices de la premi�re et de la derni�re cellule.

    A cette classe, il va te falloir d�finir quelques m�thodes (=fonctions) :
    • Un constructeur (o� tu initialises l'objet)
    • Un destructeur
    • Une m�thode pour ajouter un entier � ta file
    • Une m�thode pour la retirer
    • Une m�thode pour savoir si la file est vide
    (ceci d'apr�s le code que tu as donn� au d�but)

    Je te conseille maintenant que tu lire des tutoriaux sur le C et le C++, mais rassure toi, le code que tu dois port� n'est pas tr�s complexe, tu comprendras vite comment faire !

  7. #7
    Membre habitu�
    Inscrit en
    Mars 2006
    Messages
    14
    D�tails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 14

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    F�vrier 2007
    Messages
    4
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 4
    Par d�faut
    Il n'y a rien de tel pour migrer du code que de le maitriser un minimum. Je dois dire que si tu dois le faire et que l'on te l'impose, ca n'est pas sympathique. Mais peut etre devrais tu expliquer � la personne qui t'a demand� de la faire que ca risque de prendre du temps.
    QUoiqu'il en soit, je t'ai mach� le travail. Je n'ai pas test� du tout et je n'ai pas envie de tester (ca va me prendre trop de temps). Mais je pense que ca correspond � ce que tu recherches.

    Un conseil : utilise se code pour essayer de comprendre.

    Bon courage.

    Fichier TFile.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
     
    // Pourquoi ce nom de classe CTFile, nous avons une certaine norme
    // à respecter. Tous les noms de classe commencent pas un "C"
    // Sachant que la classe "CFile" existe déjà (Classe gérant les fichiers)
    class CTFile 
    {
    // les membres protégés à ta classe
    // ces elements ne seront pas accessible par d'autres classes (sauf heritage)
    protected:
        int m_iPremier, m_iDernier;   // premier et dernier membre de la file
        int * m_Tab;  // la file (pointeur)
     
    // membre accessible par d'autres classes
    public:
       // Constructeur
       CTFile();
       // Destructeur
       virtual ~CTFile();
     
       // void InitialiseFile(); // méthode complétement obsolète vu que l'on utilise un constructeur
       void Enfiler( int element ); // Cette méthode me fait peur :lol: 
       int Defiler( ); // methode permettant d'obtenir la valeur courante et de passer à l'élement suivant
       int FileVide (); // permet de savoir si la file est vide
    };
    Fichier TFile.cpp
    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
     
    #include <stdio.h>
    #include <conio.h>
    #include "tfile.h"
     
    #define MAXELEMENTS 100
     
    CTFile::CTFile()
    {
        // c'est ici que l'on initialise les membres
        m_iPremier = 0;
        m_iDernier = 0;   // premier et dernier membre de la file
        m_Tab = new int[MAXELEMENTS]; // il est de coutume d'initialiser le contenu du tableau à 0 mais un peu à toi de bosser  
    }
     
    CTFile::~CTFile()
    {
        // comme nous detruisons toujours ce que nous créons
        delete [MAXELEMENTS] m_Tab;
    }
     
     
    /*void CTFile::InitialiseFile()
    {
        // c'est ici que l'on initialise les membres
        m_iPremier = 0;
        m_iDernier = 0;   // premier et dernier membre de la file
        m_Tab = new int[MAXELEMENTS]; // il est de coutume d'initialiser le contenu du tableau à 0 mais un peu à toi de bosser  
    }*/
     
    void CTFile::Enfiler (int Element)
    {
       m_Tab[m_iDernier] = Element;
       m_iDernier++;
       if( m_iDernier == MAXELEMENTS) m_iDernier = 0;
    }
     
    int CTFile::Defiler ()
    {
       int element_defile;
       element_defile = m_Tab[m_iPremier];
       m_iPremier++;
       if (m_iPremier == MAXELEMENTS) 
          m_iPremier = 0;
       return element_defile;
    }
     
    int CTFile::FileVide ()
    {
        return (m_iDernier == m_iPremier);
    }

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    28
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 28
    Par d�faut
    Merci � tous !
    Merci Buloc de m'avoir "mach� le travail" , �a m'a permis de comprendre.
    � bientot !

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. probleme avec la creation d une classe "polynome"
    Par le_voisin dans le forum C++
    R�ponses: 10
    Dernier message: 05/09/2006, 00h52
  2. delphi 7 : tuto sur la creation d'une classe ?
    Par Lorenzo77 dans le forum Delphi
    R�ponses: 4
    Dernier message: 18/05/2006, 01h33
  3. [Tableau][Base]Création d'une classe de gestion de tableau
    Par mariogarcia dans le forum Collection et Stream
    R�ponses: 40
    Dernier message: 05/11/2005, 01h19
  4. Warning lors la creation d'une classe
    Par addack dans le forum Langage
    R�ponses: 11
    Dernier message: 02/11/2005, 12h06
  5. R�ponses: 11
    Dernier message: 01/09/2004, 19h04

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