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++/CLI Discussion :

Probl�me d'inclusion de .h pour reconnaissant d'un objet


Sujet :

C++/CLI

  1. #1
    Membre confirm� Avatar de Vonziz
    Inscrit en
    D�cembre 2006
    Messages
    215
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2006
    Messages : 215
    Par d�faut Probl�me d'inclusion de .h pour reconnaissant d'un objet
    Bonjour,

    J'ai un probl�me sur l'inclusion de .h entre eux :

    Voila mon .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
     
    #ifndef _EXINSTANCE_H
    #define _EXINSTANCE_H
     
    using namespace System;
     
    #include "EX.h"
    #include "EXStructure.h"
    #include "EXProduct.h"
    #include "EXComponent.h"
    #include <stdarg.h>
    #include <vcclr.h>
     
     
    namespace EXWrapperRVI {
    	public ref class EXInstance : EXObject
        {
            public :
                EXComponent GetComponent();
        };
    }
    #endif
    Voila mon .cpp :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    #include "stdafx.h"
     
    #include "EXInstance.h"
     
    EXComponent^ EXWrapperRVI::EXInstance::GetComponent() 
    {
        return gcnew EXComponent(((const EX_Instance*)pObject)->AskComponent());
    }
    Erreur : 1>.\EXInstance.cpp(10) : error C2143: syntax error : missing ';' before '^'

    Ce qui correspond � cette ligne : EXComponent^ EXWrapperRVI::EXInstance::GetComponent()

    Il ne reconnait pas le EXComponent^ dans le .cpp alors qu'il le reconnait dans le .h. Coment est-ce possible???!!!

    Merci de votre aide!

  2. #2
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Mon conseil: Rajoute un namespace EXWrapperRVI {} dans tes fichiers sources, et �cris l'impl�mentation de tes classes dedans...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre confirm� Avatar de Vonziz
    Inscrit en
    D�cembre 2006
    Messages
    215
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2006
    Messages : 215
    Par d�faut
    Mais c'est pas programmer de mani�re sale de tout impl�menter dans le .h? ^^

  4. #4
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Qui a parl� de tout impl�menter dans le .h ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre confirm� Avatar de Vonziz
    Inscrit en
    D�cembre 2006
    Messages
    215
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2006
    Messages : 215
    Par d�faut
    Hmmm peux-tu �tre plus pr�cis dans ce cas car j'ai peur de ne pas avoir tout compris.

    Tu veux que je mette le m�me using namespace.... mais dans le .cpp, c'est ca?

    J'ai r�solu le probl�me en mettant toutes les classes dans un seul et m�me fichier. C'est pas hyper propre mais j'ai trouv� que ca...

    Est-ce que vous auriez un lien sur les bonnes m�thodes pour bien structurer ces solutions C++ / CLI?

    Merci!

  6. #6
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Code C++/CLI : 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
    //EXInstance.h
    #ifndef H_EXINSTANCE_20080919_2338
    #define H_EXINSTANCE_20080919_2338
     
    #include "EX.h"
     
    namespace EXWrapperRVI {
    	ref class EXComponent;
     
    	public ref class EXInstance : EXObject
    	{
    	public :
    		EXComponent^ GetComponent();
    	};
    }
    #endif
    Code C++/CLI : 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
    //EXInstance.cpp
     
    #include "stdafx.h"
     
    #include "EXInstance.h"
    #include "EXComponent.h"
     
    namespace EXWrapperRVI {
     
    	EXComponent^ EXInstance::GetComponent() 
    	{
    		EX_Instance const * pcInstance = (const 	EX_Instance*)pObject;
    		return gcnew EXComponent(pcInstance->AskComponent());
    	}
     
     
    }
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Membre confirm� Avatar de Vonziz
    Inscrit en
    D�cembre 2006
    Messages
    215
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2006
    Messages : 215
    Par d�faut
    Ok, je comprend o� tu voulais en venir et qu'est ce que le fait d'englober le tout dans le m�me namespace peut r�soudre?

  8. #8
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Tes classes sont d�j� toutes dans le m�me namespace.

    Je n'ai fait que mettre la d�finition de leurs fonctions membres dans le namespace aussi, histoire de ne pas m'emb�ter � pr�fixer le nom du namespace inutilement...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  9. #9
    Membre confirm� Avatar de Vonziz
    Inscrit en
    D�cembre 2006
    Messages
    215
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2006
    Messages : 215
    Par d�faut
    Donc ce n'est qu'une question de mise en forme de code alors? lol

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

Discussions similaires

  1. R�ponses: 4
    Dernier message: 06/06/2012, 08h56
  2. Probl�me d'inclusion de feuille de style alternative pour IE
    Par Theberge43 dans le forum Mise en page CSS
    R�ponses: 5
    Dernier message: 20/12/2006, 23h38
  3. Probl�me d'inclusion de pages.
    Par julien85 dans le forum XML/XSL et SOAP
    R�ponses: 6
    Dernier message: 01/05/2005, 18h06
  4. [C#] Probl�me pour l'appel d'objet...
    Par AntiSAL dans le forum Windows Forms
    R�ponses: 2
    Dernier message: 14/06/2004, 09h59
  5. Probl�me d'inclusion
    Par degreste dans le forum MFC
    R�ponses: 5
    Dernier message: 27/01/2004, 00h56

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