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 :

C++ avec Visual Studio 2010


Sujet :

C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    27
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Par d�faut C++ avec Visual Studio 2010
    Bonjour,

    Je d�bute avec le C++ sur Visual Studio 2010.

    Je veux r�aliser une classe C_noeud qui permet de repr�senter un noeud dans une arborescence.

    J'ai cr�� le .h et le main, mais j'ai des soucis avec le .cpp

    Voici ce que �a donne :

    C_noeud.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
    25
    26
    27
    28
    29
     
    #pragma once
    #define Taillemax 1000
     
    class C_noeud
    {
     
    private:
    	int iNOEprofondeur;
    	int iNOEnbre_elements;
    	int piNOEliste_elements[Taillemax];
    	float fNOEbinf;
    	int iNOEnbre_restants;
    	int piNOEliste_restants[Taillemax];
    	static int iNOEcompteur;
     
    public:
    	C_noeud();
    	C_noeud(const C_noeud &);
    	void NOEajouter_element(int &valeur);
    	int NOEretirer_restant();
    	void NOEajouter_restant(const int &);
    	int NOEnbre_elements();
    	int NOEnbre_restants();
    	float NOEcalculer_binf();
    	void NOEafficher_restants();
    	void NOEafficher_elements();
    	static int NOElire_compteur();
    };
    main.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
     
    #include <iostream>
    #include "C_noeud.h"
     
    int main()
    {
    	int itmp=0;
     
       C_noeud NOEnoeud,NOEnoeud1=NOEnoeud; // Ou NOEnoeud1(NOEnoeud)
     
       int iBoucle;
     
       /*On ajoute les restants de NOEnoeud (0 à 49)*/
       for(iBoucle=0;iBoucle<50;iBoucle++)
    	   NOEnoeud.NOEajouter_restant(iBoucle);
     
       /*Affichage de NOEnoeud*/
       NOEnoeud.NOEafficher_restants();
     
       /*On retire un à un les restants de NOEnoeud et on les ajoute dans NOEnoeud1*/
        for(iBoucle=0;iBoucle<50;iBoucle++)
    	{
    	itmp=NOEnoeud.NOEretirer_restant();
    	NOEnoeud1.NOEajouter_element(itmp);	
    	}
     
    	/*Affichage de NOEnoeud1*/
    	NOEnoeud1.NOEafficher_elements();
     
       return 0;
    }
    Et C_noeud.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
     
    #include "C_noeud.h"
    #include <iostream>
     
    int C_noeud::iNOEcompteur=0;
     
    C_noeud::C_noeud(void)
    {
    	iNOEprofondeur=0;
    	iNOEnbre_elements=0;
    	fNOEbinf=0;
    	iNOEnbre_restants=0;
    	// iNOEcompteur=0; On ne peut pas car static (Placé en haut)
    	iNOEcompteur++;
    }
     
    /*Ajoute la valeur en fin de liste piNOEliste_elements */
    void NOEajouter_element(int &valeur){
    	piNOEliste_elements[iNOEnbre_elements+1]=valeur;
     
    }
    Mon probl�me est dans la proc�dure void NOEajouter_element(int &valeur), piNOEliste_elements et iNOEnbre_elements ne sont pas reconnus.

    Il y a surement quelquechose que je fais mal, merci de m'�clairer.

  2. #2
    Membre �m�rite
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    865
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 865
    Par d�faut
    Erreur classique

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    void C_noeud::NOEajouter_element(int &valeur)

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    27
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Par d�faut
    Ah, je ne savais pas!

    Il faut utiliser cette syntaxe pour chaque proc�dure/fonction ?

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    27
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Par d�faut
    Et pourquoi cout n'est pas reconnu dans cette fonction ?

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    /*Affiche le contenu de piNOEliste_restants*/
    void C_noeud::NOEafficher_restants(){
    	int iBoucle=0;
     
    	while (iBoucle<NOEnbre_restants()){
    		cout << piNOEliste_restants[iBoucle] << ", ";
    		iBoucle++;
    	}
    }

    Merci beaucoup de m'aider.

  5. #5
    Membre �prouv� Avatar de Xtrem_Voyageur
    Homme Profil pro
    Inscrit en
    Juin 2009
    Messages
    85
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2009
    Messages : 85
    Par d�faut
    Car cout se trouve �tre une fonction se trouvant dans l'espace de nom std
    Donc :
    -soit tu utilises les using directives et tu mets en d�but de programme comme le font beaucoup de d�butants
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    using namespace std;
    Mais ceci n'est pas conseill� car tu rends alors disponibles toutes les fonctions du standard (si tu as mis les bonnes ent�tes �videmment) sans besoin de les qualifier de l'espace de nom std::.
    -Soit tu pr�fixes ton cout de std::
    (tu pourrais aussi inclure using namespace std; dans une port�e sp�cifique pour que l'inclusion ne d�passe pas cette port�e)

    Mon conseil : lis un bon cours de c++

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    27
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 27
    Par d�faut
    Merci

    Derni�re petite question pour la route :

    quand je veux lancer un test, la console s'ouvre et se referme instantan�ment, comment cela se fait-il ?

    'Exercice.exe'*: Charg� 'D:\Documents\Visual Studio 2010\Projects\Exercice\Debug\Exercice.exe', Les symboles ont �t� charg�s.
    'Exercice.exe'*: Charg� 'C:\Windows\System32\ntdll.dll', Cannot find or open the PDB file
    'Exercice.exe'*: Charg� 'C:\Windows\System32\kernel32.dll', Cannot find or open the PDB file
    'Exercice.exe'*: Charg� 'C:\Windows\System32\KernelBase.dll', Cannot find or open the PDB file
    'Exercice.exe'*: Charg� 'C:\Windows\System32\msvcp100d.dll', Les symboles ont �t� charg�s.
    'Exercice.exe'*: Charg� 'C:\Windows\System32\msvcr100d.dll', Les symboles ont �t� charg�s.
    Le programme '[6892] Exercice.exe: Natif' s'est arr�t� avec le code 0 (0x0).
    Merci.

Discussions similaires

  1. [Article] D�ploiement Web avec Visual Studio 2010
    Par Nicolas Esprit dans le forum Visual Studio
    R�ponses: 23
    Dernier message: 15/11/2013, 10h47
  2. R�ponses: 6
    Dernier message: 17/08/2010, 14h19
  3. Silverlight 3 et 4 avec Visual studio 2010
    Par miche19000 dans le forum Silverlight
    R�ponses: 3
    Dernier message: 06/07/2010, 17h12

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