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++Builder Discussion :

Ins�rer une classe dans un prog C++ Builder


Sujet :

C++Builder

  1. #1
    Membre extr�mement actif
    Avatar de randriano
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 221
    Par d�faut Ins�rer une classe dans un prog C++ Builder
    J'avoue que je suis beginner en mati�re de POO. Avant, j'utilisais des classes pr�d�finies mais maintenant j'en cr�e.
    J'ai cr�� une classe et je l'ai ins�r� dans le fichier .H g�n�r� pour Unit1 (Unit1.cpp et Unit1.h).
    Mais BCB dit que les m�thodes de la classe ne doivent pas �tre d�finies l� dedans. J'ai m�me cr�� un fichier .H s�par� pour ma classe mais m�me chose.
    Alors je les place dans Unit1.cpp (qui est possible en Turbo C++):�a provoque l'erreur
    [C++ Erreur] Unit1.cpp(10): E2141 Erreur de syntaxe de d�claration

    Que faire? J'ai parcouru la Faq c++ et pas de r�ponse.
    randriano.dvp.com
    D�veloppeur. Product Owner [Agile]. Sites web, mobile apps, syst�me d'information (SI).

  2. #2
    Membre chevronn�
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    349
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 349
    Par d�faut
    Tu mets ta d�claration de classe (ainsi que les �ventuelles fonctions inline) dans le .h.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    class TMaClasse
    {
        ....
    public:
        void MaFonction(int nb);
        ....
    };
    Tu �cris le code des fonctions membres dans le .cpp (tu n'oublies pas d'inclure ton .h dans le .cpp !)

    Ex:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    #include "MaClasse.h"
     
    void TMaClasse::MaFonction(int nb)
    {
        ...
    }
    Cela dit, tu n'as pas d� bien chercher car tu trouves �a dans n'importe quel cours de C++ !

  3. #3
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    D�tails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Par d�faut
    N'oublie pas de cliquer sur si la r�ponse te convient.

  4. #4
    Membre extr�mement actif
    Avatar de randriano
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 221
    Par d�faut
    J'ai trouv� des faq d'insertion de classe mais pour Dev-C++.
    Sous Turbo C++, l'insertion de classe n'est pas un probl�me m�me dans le fichier cpp principal.
    Mais sous C++ Builder, faut-il toujours mettre un T au d�but du nom de classe? Comment utiliser alors la classe dans l'unit� correspondant � Form1 par ex si elle est d�clar�e dans un fichier CPP et H s�par�s.
    Pour mon cas, �a fait la m�me erreur E2141.
    randriano.dvp.com
    D�veloppeur. Product Owner [Agile]. Sites web, mobile apps, syst�me d'information (SI).

  5. #5
    Membre �prouv�
    Inscrit en
    Mars 2002
    Messages
    105
    D�tails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 105
    Par d�faut
    Bonjour,

    Citation Envoy� par rakoto15
    J'ai trouv� des faq d'insertion de classe mais pour Dev-C++.
    Sous Turbo C++, l'insertion de classe n'est pas un probl�me m�me dans le fichier cpp principal.
    Ce n'est pas un probl�me d'outil de d�veloppement (Dev-C++, Turbo ou Builder), mais plut�t de langage ou m�me de structuration de programme.

    Citation Envoy� par rakoto15
    Mais sous C++ Builder, faut-il toujours mettre un T au d�but du nom de classe?
    Non. Il n'y a pas de r�gle pour nommer une classe, simplement de bonnes habitudes...

    Citation Envoy� par rakoto15
    Comment utiliser alors la classe dans l'unit� correspondant � Form1 par ex si elle est d�clar�e dans un fichier CPP et H s�par�s.
    Pour mon cas, �a fait la m�me erreur E2141.
    Je pense que le plus simple serait de nous montrer le code qui pose probl�me.


    Nicolas

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 412
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 412
    Par d�faut
    Salut !

    Le caract�re "T" pr�c�dent le nom des classes, celles de BCB, n'est que purement anecdotique.
    A titre perso j'emploie souvent un "j"... sauf pour mes nouveux composants (qui s'ajoutent � la palette) et pour lesquels je laisse BCB rajouter un "T".

    Il suffit d'inclure le header de cette unit� dans l'unit� qui a besoin de conna�tre cette classe.
    Si le header de l'unit� (principale) a �galement besoin de conna�tre cette classe il faudra d�clarer cette inclusion avant le header de cette unit� (principale).

    Le compilateur ne prend en compte lors de la compilation que ce qu'il a vu passer, comme s'il effectuait une compilation en une seule passe !

    A plus !

  7. #7
    Membre extr�mement actif
    Avatar de randriano
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 221
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 221
    Par d�faut
    Salut les amis!

    Bon, je crois que je suis embarass� l�.

    En fait, l'erreur a pu �tre �vit� d�s le d�part, j'ai oubli� de terminer la classe par un point-virgule.

    Merci � tous
    randriano.dvp.com
    D�veloppeur. Product Owner [Agile]. Sites web, mobile apps, syst�me d'information (SI).

  8. #8
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 412
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 412
    Par d�faut
    Salut !

    Ca arrive � d'autres !
    Donc toujours bien relire ce que l'on r�dige !

    A plus !

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

Discussions similaires

  1. Comment ins�rer une classe dans un vector
    Par razily dans le forum SL & STL
    R�ponses: 9
    Dernier message: 26/02/2010, 18h55
  2. Ins�rer un .class dans une applet
    Par ChPortos dans le forum Applets
    R�ponses: 6
    Dernier message: 09/06/2008, 14h00
  3. [C#] [.NET] Lecture d'une classe dans un fichier
    Par niPrM dans le forum Windows Forms
    R�ponses: 4
    Dernier message: 18/05/2004, 08h57
  4. ins�rer une date dans une table mssql
    Par ericmart dans le forum MS SQL Server
    R�ponses: 3
    Dernier message: 29/01/2004, 10h37
  5. [Crystal Reports 9] comment ins�rer une image dans D�tails
    Par VVE dans le forum SAP Crystal Reports
    R�ponses: 2
    Dernier message: 22/10/2003, 17h06

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