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 :

probl�me de class en C++ .Net


Sujet :

C++

  1. #1
    Membre confirm�
    Inscrit en
    D�cembre 2007
    Messages
    67
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2007
    Messages : 67
    Par d�faut probl�me de class en C++ .Net
    Bonjour,

    J'ai un probl�me pour r�aliser une class en C++ .Net.
    Je voudrais ex�cuter la fonction toto() par exemple quaund je clique sur le bouton dans la Form1.

    Le programme est incomplet. Il manque la class toto.
    je n'arrive pas � r�aliser une class simple.
    Ce n'est peut �tre pas la bonne mani�re de faire.


    Dans le fichier Ia.cpp :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    #include "StdAfx.h"
    #include "Ia.h"
     
    Ia::Ia(void)
    {
    }
    Dans le fichier Ia.h :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    #pragma once
     
    ref class Ia
    {
    public:
    Ia(void);
    };

    Dans le fichier Form1.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
    #pragma once
    #include "StdAfx.h"
    #include "Ia.h"
    ...
     
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e)
    {
     
    Ia.toto(); // ici, ça bug. Je n'arrive pas à exécuter toto()
     
    Form2 ^maForm2 = gcnew Form2();
    maForm2->richTextBox1->AppendText("test");
    maForm2->Show();
    }

    Merci beaucoup

  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
    �a d�pend si tu veux que toto() puisse �tre ex�cut�e avec une instance de Ia ou sans.
    Avec:
    Dans le fichier Ia.h :
    Code C++/CLI : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    #pragma once
     
    ref class Ia
    {
    public:
    	Ia(void);
    	void toto(void);
    };

    Dans le fichier Ia.cpp :
    Code C++/CLI : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #include "StdAfx.h"
    #include "Ia.h"
     
    Ia::Ia(void)
    {
    }
     
    void Ia::toto(void)
    {
    }
    Dans le fichier Form1.h :

    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
    #pragma once
    #include "StdAfx.h"
    #include "Ia.h"
    ...
     
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e)
    {
     
    	Ia ^ia = gcnew Ia();
    	ia->toto();
     
    	Form2 ^maForm2 = gcnew Form2();
    	maForm2->richTextBox1->AppendText("test");
    	maForm2->Show();
    }
    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
    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
    Sans:
    Dans le fichier Ia.h :
    Code C++/CLI : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    #pragma once
     
    ref class Ia
    {
    public:
    	Ia(void);
    	static void toto(void);
    };

    Dans le fichier Ia.cpp :
    Code C++/CLI : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #include "StdAfx.h"
    #include "Ia.h"
     
    Ia::Ia(void)
    {
    }
     
    void Ia::toto(void)
    {
    }

    Dans le fichier Form1.h :

    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
    #pragma once
    #include "StdAfx.h"
    #include "Ia.h"
    ...
     
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e)
    {
     
    	Ia::toto();
     
    	Form2 ^maForm2 = gcnew Form2();
    	maForm2->richTextBox1->AppendText("test");
    	maForm2->Show();
    }
    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.

  4. #4
    Membre confirm�
    Inscrit en
    D�cembre 2007
    Messages
    67
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2007
    Messages : 67
    Par d�faut
    Bonjour,
    Merci beaucoup, �a fonctionne tr�s bien.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    Ça dépend si tu veux que toto() puisse être exécutée avec une instance de Ia ou sans.
    C�est quoi les diff�rences (avantage, inconv�nient) en 2 mots ?

    Merci encore M�dinoc
    @+

  5. #5
    Membre confirm�
    Inscrit en
    D�cembre 2007
    Messages
    67
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2007
    Messages : 67
    Par d�faut
    tien, si je rajoute :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #include "StdAfx.h"
    #include "Ia.h"
     
    Ia::Ia(void)
    {
    }
     
    void Ia::toto(void)
    {
    int i=0; //  <--- ça bug
    }

    Error 1 fatal error C1093: API call 'ImportFile' failed '0x80070003' : ErrorMessage: Le chemin d'acc�s sp�cifi� est introuvable.


    Le plus �trange, c�est que �a fonctionne en Release et pas en Debug

    ce n'est pas normal

  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
    1. C'est toute la diff�rence entre m�thode d'instance et m�thode de classe. Je ne suis pas assez dou� pour expliquer cela, mais ce sont des concepts courants de la programmation orient�e objet, tu devrais trouver facilement quelque chose qui parle de �a...
    2. Ben une erreur pareille, ce n'est pas li� � ton code. C'est la premi�re fois que je vois �a.
    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�
    Inscrit en
    D�cembre 2007
    Messages
    67
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2007
    Messages : 67
    Par d�faut
    Merci beaucoup

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

Discussions similaires

  1. R�ponses: 9
    Dernier message: 01/05/2012, 19h35
  2. Probl�me sur classe Transformer avec les <!--
    Par tykool dans le forum Format d'�change (XML, JSON...)
    R�ponses: 1
    Dernier message: 10/01/2006, 10h20
  3. Probl�me de classe
    Par DeusXL dans le forum DirectX
    R�ponses: 15
    Dernier message: 04/12/2005, 14h37
  4. Probl�me de classe
    Par tidou dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 6
    Dernier message: 14/10/2005, 17h49
  5. [FLASH MX2004] Probl�me de classe
    Par JulPoWeR dans le forum Flash
    R�ponses: 1
    Dernier message: 10/07/2005, 22h51

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