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

MFC Discussion :

migration vers visual C++ 2005


Sujet :

MFC

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 17
    Points : 7
    Points
    7
    Par défaut migration vers visual C++ 2005
    Bonjour

    J'essaie de me remettre au C++ sur lequel je n'ai pas travaillé depuis quelque temps.
    Mes anciens programmes ont étés écrit avec l'editeur de prgramme de microsoft (visual studio x?) en 2003
    Je travaille maintenant sur visual studio express 2005
    Peut être y a t il des changements à faire dans le code pour se mettre à jour.
    en particulier en ce qui concerne les librairies (#include...) ?

    sur cet exemple, (le programme doit simuler un jeu de carte) je ne comprend pas les erreurs obtenue à la compilation :

    paquet.cpp(3) : fatal error C1190: managed targeted code requires a '/clr' option

    carte.h(4) : error C2011: 'Carte' : 'class' type redefinition c:\ ... carte.h(4) : see declaration of 'Carte'
    Quelqu'un peut il me dépanner ,svp ?

    (voici le code :

    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
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
     
    //-------------------------------------paquet.h--------------------------------------------------
    #include "carte.h"
     
    class Paquet
    {
    public :
        Paquet();
        void Affiche();
        void Bat();
    private :
        Carte Tas[52];
    };
     
    //-----------------------------------carte.h----------------------------------------------------------
    class Carte
    {
    public :
        Carte(int couleur=0,int hauteur=0);
     
    private :
        int c;
        int h;
    };
     
    //------------------------------------------carte.cpp-----------------------------------------------------
    #include "carte.h"
     
    Carte :: Carte(int couleur,int hauteur)
    {
        c=couleur;
        h=hauteur;
    }
     
     
    //------------------------------------------paquet.cpp----------------------------------------
    #include "paquet.h"
    #using <stdlib>
    #using <time>
    #include <iostream>
    using namespace std;
     
    Paquet :: Paquet()
    {
        int i=0;
        for (int couleur=0;couleur++;couleur<4)
        {
            for (hauteur =0;hauteur++;hauteur<13)
            {
                Carte K(couleur,hauteur);
                Tas[i]=K;
                i++;
            }
        }
    }
     
    void Paquet :: Affiche()
    {
        cout <<"\nVoici le paquet :";
        for(int i =0;i++;i<52)
        {
            cout<<"\n"<<Tas[i].h<<" de "<<Tas[i].c;
        }
    }
     
    void Paquet ::Bat()
    {
        int CarteDejaTiree[52];
        int tir;
        for (int i=0;i++;i<52)
            CarteDejaTiree[i]=0;
        for (int i=0;i++;i<52)
        {
            do
            {
                tir=(int)(rand()*52.0/RAND_MAX);
            }
            while CarteDejaTiree[tir]=1;
            Tas[i].h=i%13;
            Tas[i].c=i/13;
            CarteDejaTiree[tir]=1;
        }
    }

  2. #2
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 753
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 753
    Points : 10 704
    Points
    10 704
    Billets dans le blog
    3
    Par défaut

    Je me suis fatigué à correctement mettre en forme le code pour qu'il soit lisible, merci de faire attention la prochaine fois.

    Tu as créé quel type de projet ?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    Bon d'accord je vais faire attention la prochaine fois

    J'ai fait un projet Win32/Console Application (empty project)

  4. #4
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 753
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 753
    Points : 10 704
    Points
    10 704
    Billets dans le blog
    3
    Par défaut
    Le problème c'est que tu utilises du C++ qui n'est pas standard:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #using <stdlib> 
    #using <time>
    #using, c'est du "C++.Net". D'ailleurs, c'est juste une méprise avec #include je pense, car ça s'utilise pas comme ça.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #include <cstdlib> 
    #include <ctime>
    note le 'c' rajouté devant <stdlib>:
    http://c.developpez.com/faq/cpp/?pag...le#SL_iostream
    lire aussi:
    http://c.developpez.com/faq/cpp/?pag...ASS_header_cpp

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    ok je te remercie
    J'ai mis finalement

    #include "paquet.h"
    #include "stdlib.h"
    #include "time.h"
    #include <iostream>
    using namespace std;

    est ce qu'il y a beaucoup de nom de librairie qui change comme iostream.h ?

  6. #6
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 753
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 753
    Points : 10 704
    Points
    10 704
    Billets dans le blog
    3
    Par défaut
    Qui changent par rapport à quoi / quand ?
    Déjà sous VC++ 2003 iostream.h ne compilait pas. <stdlib.h> c'est du C, <cstdlib> du C++.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    merci pour les infos.

    J'ai un problème également avec les énumérations

    //-----------------------------------carte.h----------------------------------------

    enum Couleur {pique, coeur, carreau, trefle};
    enum Hauteur {2,3,4,5,6,7,8,9,10,Valet,Dame,Roi,As};

    class Carte
    {
    public :
    Carte(Couleur c=coeur,Hauteur h=As);
    void Affiche();
    private :
    Couleur couleur;
    Hauteur hauteur;
    };


    la compilation renvoie

    carte.h(4) : error C2143: syntax error : missing '}' before 'constant'
    carte.h(4) : error C2143: syntax error : missing ';' before '}'
    carte.h(4) : error C2059: syntax error : '}'
    carte.h(9) : error C2065: 'As' : undeclared identifier


    Je ne comprend pas !!!
    Désolé pour les question bateau...

  8. #8
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 753
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 753
    Points : 10 704
    Points
    10 704
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par goléador
    Bon d'accord je vais faire attention la prochaine fois

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    excuse j'avais pas capté le truc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    //-----------------------------------carte.h--------------------------------------
     
    enum  Couleur {pique, coeur, carreau, trefle};
    enum  Hauteur {2,3,4,5,6,7,8,9,10,Valet,Dame,Roi,As};
     
    class Carte
    {
    public :
    	Carte(Couleur c=coeur,Hauteur h=As);
    	void Affiche();
    private :
    	Couleur couleur;
    	Hauteur hauteur;
    };

  10. #10
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 753
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 753
    Points : 10 704
    Points
    10 704
    Billets dans le blog
    3
    Par défaut
    Il attend un nom pour un enum, tu lui donne un chiffre. Remplace 2 par Deux pas exemple...

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 17
    Points : 7
    Points
    7
    Par défaut
    je te remercie
    ca marche

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. visual 6.0 vers visual studio 2005
    Par jojo000 dans le forum Langage
    Réponses: 15
    Dernier message: 04/01/2010, 10h27
  2. Migration ( vers SQL serveur 2005 ) de BASE VIA ODBC
    Par kfmystik dans le forum Outils
    Réponses: 0
    Dernier message: 31/07/2008, 09h57
  3. Migration vers SQL Server 2005
    Par moulayoubi dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 17/04/2007, 07h43
  4. Migrations de codes MFC de Visual 6.0 vers Visual studio 2005
    Par jojo le boss dans le forum VC++ .NET
    Réponses: 12
    Dernier message: 06/08/2006, 11h47
  5. migration vers visual C++ express 2005
    Par goléador dans le forum MFC
    Réponses: 2
    Dernier message: 30/03/2006, 12h33

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