begin process at 2012 05 29 07:45:58
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

Les listes chaînées


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

Les listes chaînées

dimanche 7 février 2010 à 18:45:28 | Les listes chaînées

paras00

Bonjour ;
j'aimerai bien ke vous m'aidez à resoudre une erreur dans mon programme

Code C/C++ :
#include <iostream.h>
typedef void* T ;
class element
{
    friend class liste;
    T valeur;
    element *next;
    element(int a)
    {valeur=(T)a;next=NULL;}
};
class liste
{
  T courant;
  public :
    liste :: liste( const liste & uneListe )
{
  * this = uneListe;
}
    liste(){courant=NULL;}
	int vide ();
	void initialiser ();
	void ajouter (T);
    int longuer();
    void afficher();
};
int liste::vide()
{
    if(courant==NULL)
    return 1;
    else return 0;
}
void liste::initialiser()
{
    if(!vide())
	{
        courant = NULL;
	}
}
void liste::ajouter(T v)
{
	void* tmp=courant;
    void* nouveau = new T(v);
    ((*nouveau)->valeur) = v;
    nouveau->next = NULL;
    if(vide()) courant = nouveau;
	else
	{
		tmp = courant;
        while(tmp->next != NULL) tmp = tmp->next;
        tmp->next = nouveau;
    }
}

void liste::afficher()
{
	void* tmp;
    if(vide()) cout<<"                  !la liste est vide!\n";
    else
	{
		tmp = courant;
        while(tmp != NULL)
		{
			cout<<((tmp)->valeur)<<" ";
            tmp = tmp->next;
        }
        cout<<"   - longueur : "<<longuer()<<endl;
     }
}
int liste::longuer()
{
	int l=0;
    void* tmp = courant;
    while(tmp != NULL)
	{
		l++;
        tmp = tmp->next;
    }
    return l;
}

int main ()
{
	liste * L = new liste();
	int choix;
	int v;
	do
	{
      cout<<"1-Nouvelle Liste.\n";
      cout<<"2-Ajouter Element.\n";
      cout<<"6-Afficher.\n";
      cout<<"0-Quitter.\n";
	  cout<<"   -->choix(0-6):";	  cin>>choix;
      switch(choix)
	  {
		  case 1:
			  L->initialiser();
              break;
		  case 2:
			  cout<<" - Entrer une valeur : "; cin>>v;
			  L->ajouter((T)v);
              break;

         case 6:
			  L->afficher();
			  break;
 }
    
	}while(choix != 0);
	return 0;

}




Il me donne comme erreur :
Code :
C:\Program Files\CodeBlocks\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\backward\backward_warning.h|32|warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the  header for the  header for C++ includes, or  instead of the deprecated header . To disable this warning use -Wno-deprecated.|
C:\Documents and Settings\user\Bureau\lis.cpp||In member function `void liste::ajouter(void*)':|
C:\Documents and Settings\user\Bureau\lis.cpp|46|error: `void*' is not a pointer-to-object type|
C:\Documents and Settings\user\Bureau\lis.cpp|47|error: `void*' is not a pointer-to-object type|
C:\Documents and Settings\user\Bureau\lis.cpp|52|error: `void*' is not a pointer-to-object type|
C:\Documents and Settings\user\Bureau\lis.cpp|52|error: `void*' is not a pointer-to-object type|
C:\Documents and Settings\user\Bureau\lis.cpp|53|error: `void*' is not a pointer-to-object type|
C:\Documents and Settings\user\Bureau\lis.cpp||In member function `void liste::afficher()':|
C:\Documents and Settings\user\Bureau\lis.cpp|123|error: `void*' is not a pointer-to-object type|
C:\Documents and Settings\user\Bureau\lis.cpp|124|error: `void*' is not a pointer-to-object type|
C:\Documents and Settings\user\Bureau\lis.cpp||In member function `int liste::longuer()':|
C:\Documents and Settings\user\Bureau\lis.cpp|136|error: `void*' is not a pointer-to-object type|
||=== Build finished: 8 errors, 1 warnings ===|



C'est suppeeeeer urgent
Et Merci d'avance
dimanche 7 février 2010 à 18:48:29 | Re : Les listes chaînées

paras00

Surtout les erreurs de "`void*' is not a pointer-to-object type"
lundi 8 février 2010 à 05:46:56 | Re : Les listes chaînées

neone

Bonsoir, le code a pour but la création d'une liste chainée dont les valeurs c des void *. ya déja une mal comprehension des listes chainées que ce soir double ou simple.
faudra penser a faire un truk dans ce genre:
classe liste
{
element courant;
element suivant;
}
classe element
{
avec ton void * ou ce que tu ve.
}
aprés c a toi de voir.
boncourage


Cette discussion est classée dans : and, liste, void, cpp, documents


Répondre à ce message

Sujets en rapport avec ce message

encore un probleme de lien opengl [ par seichettmorru ] je mets bien #include j'ai aussi opengl32.dll dans system32"Compilateur: Default compilerBuilding Makefile: "C:\Documents and Settings\Mathias\Mes doc programme permettant de créer un sous repertoire sur la racine du discque avec la fonction39h de l'interruption dos 21h [ par dosslino ] bonsoir , je suis confronté à ce message tout le temps si je cherche à compiler mon programme comment faire ?voici le message:Compiler: Default compil Impossible de compiler mon jeu de 421 avec Visual C++ 2005 Express Edition pourquoi? Alors qu'il se compile parfaitement avec d'autres compilateurs? [ par ndubien ] Bonjour, j'ai essayer de passer mon jeu de 421 (voir http://www.cppfrance.com/codes/421_38215.aspx) sur Visual C++ 2005 Express Edition, et lorsque Probleme de compilation [ par XRaph ] Bonjour, j'ai un assez gros probleme: lorsque j'essaye de compilé un programme cpp avec Visual studio ou dev-cpp, j'ai un série d'erreurs. En essayant Instruction en c++ incorrecte [ par eya02 ] Salut! SVP je travaille sur un code c++ nommé hybrid particle filter/kernel mean shift Dans ce code j'ai une instruction que je ne comprend pas en plu problème de include fort embetant... [ par gregorian ] Bonjour, Voila je suis entrain de dvp un projet pour l'école (et oui je suis toujours au cour...)En dev c++ J'ai remarqué qu'il y avait des problèmes découpage de classe - instanciation template [ par vdox ] Bonjour, j'ai créé une classe template. De façon très classique, la déclaration est dans le .hpp et la définition des fonctions dans le cpp. J'aimerai checkbox [ par thejrem ] bonjour j'aurai besoin d'aide pour ecrir une chekbox en langage C il doit testé si le fichier existe dans le repertoir demmarrage pour savoir l'etat i liste chaînée en langage c [ par youssefelmessari ] messieur j'aun un problème concernat la suprresion d'un élement sur la liste chaînée dont voici le doee source void suppression(void)// a r e v o i r


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,265 sec (3)

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