begin process at 2012 05 28 19:14:45
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Comprend pas ce que me dis le compilateur :)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Comprend pas ce que me dis le compilateur :)

mardi 20 décembre 2005 à 16:34:30 | Comprend pas ce que me dis le compilateur :)

Math3o

Salut à tous !

Voilà j'vous écris car j'ai un petit problème avec un projet que je dois réaliser pour les cours de programmation où l'on doit gérer un système de liste ( une sort de liste en deux dimensions). On a une liste ( class ensElem ) qui contient un pointeur vers un ensemble d'entier ( class element ) et un pointeur vers l'ensemble d'élément suivant.  voici donc ma fonction qui sert a ajouter un nouvel ensemble d'entier en limitant l'utilisation de la mémoire ( en trouvant des suffix communs dans 2 ensemble d'entier différents ) :

class element;
typedef element* ensemble;

class element{
public :
       int info;
       int refcount;
       element* next;
};

class ensElem;
typedef ensElem* ensEns; // Ensemble d' ensemble

class ensElem{
public :
       ensemble head;
       ensElem* next;
};

ensElem::ensElem ( ensemble e , ensEns ee )
{
        head = e;
        ensEns = ee;
}

include <iostream>
using namespace std;
const int NULL = 0;

/////////////////////////////////////////////////////////////////////////////////////
/// Fonction n°1
/////////////////////////////////////////////////////////////////////////////////////

void ajout ( ensEns & ee, ensemble e )
{
       ensemble pe, test, p1save, p2save;
       int Long, LongSave = 0;
       for ( ensEns p1 = ee ; p1 !=NULL ; p1 = p1->next )
       {
           test = p1->head;
           pe = e;
           Long = 0;
           while ( test != NULL && e != NULL )
           {
                 if ( pe->info == test->info )
                 {   
                      pe = pe->next;
                      test = test->next;
                      if ( Long == 0 )
                            p1save = test;
                      Long++;
                 }
                 else
                 {
                      Long = 0;
                      if ( pe->info > test->info )
                           test = test->next;
                      else
                           pe = pe->next;
                 }
          
           }
           if ( Long > LongSave )
           {
                LongSave = Long;
                p2save = p1save;               
           }
       }
       if ( LongSave != 0 )
       {
            if ( e->info == p2save->info )
            {
                 e = p2save;
                 p2save->refcount++;
            }
            else
            {     
                  while ( e->next->info =! p2save->info )
                       e = e->next;
                  e->next = p2save;
                  p2save->refcount++;
            }
       }
       while ( ee->next != NULL )
             ee = ee->next;
       ee->next = new ensElem ( e , NULL );
          
}
 
A la ligne marquée de rouge , le compilateur me dis :

`ensElem::ensElem(element*, ensElem*)' does not match any in class `ensElem'

je ne comprend pas ... 

et a la ligne marquée de vert , le compilateur me dis également une chose que je ne comprend pas :

  candidates are: ensElem::ensElem()
ensElem::ensElem(const ensElem&)


Pourriez vous m'aider svplé :) car j'ai beau chercher je ne trouve pas !

ps : si vous voyez une erreur dans ma fonction en ce qui concerne le résultat , ce n'est pas grave. je veux juste comprendre ce ke me dis le compilateur :) merci !

mardi 20 décembre 2005 à 16:53:44 | Re : Comprend pas ce que me dis le compilateur :)

vecchio56

Administrateur CodeS-SourceS
Rouge: tu as oublié de déclarer le constructeur dans ta classe, tu dois ajouter
ensElem ( ensemble e , ensEns ee );
Vert: corrige déja la rouge et on verra
mardi 20 décembre 2005 à 16:58:14 | Re : Comprend pas ce que me dis le compilateur :)

Math3o

Ce la ne marche toujours pas ... il m'affiche toujours la même chose.
mardi 20 décembre 2005 à 17:03:23 | Re : Comprend pas ce que me dis le compilateur :)

vecchio56

Administrateur CodeS-SourceS
Ah oui j'avais pas vu:
ensEns = ee; // Ca ne veut rien dire, ensEns est un nom de type!
mardi 20 décembre 2005 à 17:05:46 | Re : Comprend pas ce que me dis le compilateur :)

Math3o

ah non lol ... c'est moi qui suis bête ! Donc la ca marche :)

et la il me reste ceci dans mon compilateur :

      In constructor `ensElem::ensElem(element*, ensElem*)':
expected primary-expression before '=' token
 
     At global scope:
expected constructor, destructor, or type conversion before '<' token
expected `,' or `;' before '<' token

voila merci d'avance déjà :)

mardi 20 décembre 2005 à 17:08:02 | Re : Comprend pas ce que me dis le compilateur :)

Math3o

je dois mettre quoi alors ? ( a la place de ensEns car ensEns est un pointeur vers un ensemble d'élément )
mardi 20 décembre 2005 à 17:12:27 | Re : Comprend pas ce que me dis le compilateur :)

vecchio56

Administrateur CodeS-SourceS
Réponse acceptée !
ensEns n'est pas un pointeur, c'est un nom de type, équivalent à ensElem*. C'est donc exactement comme si tu écrivais ensElem* = ee; ce qui n'a aucun sens, tu es d'accord.
Tu dois donc remplacer cette ligne par next = ee;
mardi 20 décembre 2005 à 17:14:42 | Re : Comprend pas ce que me dis le compilateur :)

Math3o

oh ben ui .. ke je suis bête !! lol en plus c'est déclaré dans ma classe  n'importe koi

Merci beaucoup en tout cas ! C'est toujours sur des bêtes erreurs qu'on bloke ;) 
mardi 20 décembre 2005 à 17:25:57 | Re : Comprend pas ce que me dis le compilateur :)

Math3o

euh juste encore un truc :

pour ceci :

ensElem::ensElem ( ensemble e , ensEns ee )
{
        head = e;
        next = ee;
}

include <iostream>

le compilateur me dis :

expected constructor, destructor, or type conversion before '<' token
expected `,' or `;' before '<' token

??

mardi 20 décembre 2005 à 17:28:29 | Re : Comprend pas ce que me dis le compilateur :)

vecchio56

Administrateur CodeS-SourceS
Réponse acceptée !
#include <iostream>

1 2

Cette discussion est classée dans : test, info, next, ensemble, enselem


Répondre à ce message

Sujets en rapport avec ce message

turboc++ icones .exe??? [ par idk ] Comment faire pour plus avoir cette icone horrible, (carré blanc avec du bleu en haut!)Dans le makefile faut faire quoi!voici le makefile d'un program Besion d'info urgentes pour Capture Video WDM en C++ [ par kodoma ] Je dois faire un programme en c++, ki permette de capturer une video à l'aide des drivers WDM et de pouvoir récupérer une seule image ki sera sauvegar info winsosk [ par alien9900 ] je cherche un cour sur WinSock avec C++,et merci; Apprenons ensemble :) [ par bop ] Salut.Je suis un jeune, débutant en programm' C++.J'ai 16 ans et je suis encore au lycée :)Néanmoins je touche ma bille en informatique en général, et info sur la librairie [ par chris ] Salut je cherche des infos sur la librairie standart du Cen particulier sur ctype.hc pour mon compte rendu de tp :)merci de me repondre ++ Exporter une classe dans une DLL... [ par Clovis ] Salut,Je voudrais pouvoir exporter dans une DLL, si c'est possible, les fonctions et les objets du listing suivant. Car, je voudrais, par la suite pou HEEELLLLPPPP!!!!!!!!!!detruire un handle de com [ par mavric ] salut je fais un prog de com serie ds mon prog j'ouvre une com avec la fonction suivante :hcom=createfile("com2"...........puis je verifie si l'ouvert HEEELLLLPPPP!!!!!!!!!!detruire un handle de com [ par mavric ] salut je fais un prog de com serie ds mon prog j'ouvre une com avec la fonction suivante :hcom=createfile("com2"...........puis je verifie si l'ouvert HELP!!!!!!!!!!!!!! => comparaison de BMP [ par mavric ] bonjour ,je cherche a comparer 2 fichiers bmp ,mais de facon optimisé , pour le moment mon prog mais environ 20 sec et il faudrait qui mette moins de Switch et char [ par Stoomm ] Bonjour,Si j'ai :char test[10];strcpy (test, "monchar ";Si je souhaite faire un switch : Je fais comment ???switch (test){...}Il aime pas ! Quelqu'un


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,452 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales