Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

[C++] Problème déclaration tableau / classes

Sammy59400, le vendredi 10 novembre 2006 à 22:05:26
Bonjours chers posteurs et consulteurs de ce forum. Je suis nouveau et fraichement identifié et voici mon probleme.

Je travaille sur un probleme orienté objet sur C++ ou il me faut simuler le comportement de moutons et de loups sur un environnement.

J'ai defini une classe mobile dont les instanciations seront des mobiles referencés par leur coordonnées ...

Je crée une classe liste qui sera un tableau de mobiles. Voici le code de la definition de la liste :

class liste
{   int taille, sommet;
     mobile tab;
public:
     liste(int=20);
     ~liste();
    // autres methodes de la classe liste ....
};

liste::liste(int t)
{    tab = new mobile[t];    
     taille = t;                         
     sommet = -1;
}

Voici le problème de compilation au constructeur de liste :
"no matching function for call to mobile::mobile()" (constructeur de mobile)

D'ou vient le problème ??
Aidez moi

Merci

Sammy
Répondre à Sammy59400  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
kij_82, le vendredi 10 novembre 2006 à 22:56:04
J'ai pas fait de C++, mais en Java si tu fais pas de constructeur ca va pas aller, alors j'imagine qu'en C++ c'est pareil ^^

(Pour ta classe mobile je parle, pas pour celle que tu as écrite)

~ iclic @ gauch,iclic, iclic @ droate, iclic, iclic
et ya pas de bôg môsieu ! ~
Répondre à kij_82

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
carkiasis, le samedi 11 novembre 2006 à 01:21:37
Salut,

"no matching function for call to mobile::mobile()" veut logiquement dire que ton constructeur par défaut de ta classe mobile n'est pas défini...
Il te faut un truc du genre :
mobile::mobile() { //ce que tu veut par defaut pour tes attributs }


Sinon, qu'est ce que veut tu faire avec ca : "tab = new mobile[t]; " ?
Tu veux que tab sois un tableau de mobile de taille 7?? Alors a ce moment la faut plutot ecrire plus haut dans les declarations : mobile tab[]. (ou un truc du genre).
Répondre à carkiasis

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
nicO.2x45, le lundi 13 novembre 2006 à 09:21:22
Bonjour,

COncernant le constructeur de liste il ne devrait pas y avoir de probleme, tu fais une surcharge.

Ton probleme vient du fait que la classe liste ne connait pas la classe mobile, d'où un echec de l'appel au constructeur.
Rajoute le .h de ta classe mobile dans ton .cpp de liste, du style : #include <mobile.h>

Ensuite, si tu n'as pas mis de code dans ton constructeur de mobile, il faudra ne pas oublier de définir au minimum la definition de la classe, et le code minimum pour qu'il sache quoi faire !!
nicO.2x45 alias Le_Foudroyeur :)
Répondre à nicO.2x45

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
mamiemando, le lundi 13 novembre 2006 à 09:34:27
class liste
{   int taille, sommet;
     mobile tab; // classe mobile pas définie
public:
     liste(int=20);
     ~liste();
    // autres methodes de la classe liste ....
};

liste::liste(int t)
{    tab = new mobile[t];   // ça, ça ne va pas non plus 
     taille = t;                         
     sommet = -1;
}


Bon je te conseile de repartir sur un truc beaucoup plus simple et beaucoup plus simple. Pour manipuler une liste :
#include <list>

struct mobile{
  int plop;
  explicit mobile(int plop0=0):plop(plop0){}
};

typedef struct mobile mobile_t;

int main(){
  std::list<mobile_t> ma_liste;
  ma_liste.push_back(mobile_t(1));
  ma_liste.push_back(mobile_t(2));
  ...
  return 0;
}

Pour plus d'info sur les std::list :
http://www.sgi.com/tech/stl/List.html

Bonne chance
Répondre à mamiemando

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
nicO.2x45, le lundi 13 novembre 2006 à 12:19:35
Bonjour Mamiemando,
Tiens je savais que les listes de ce genre étaient dispo en java dans la derniere update de l'API java, mais je savais pas pour le c/c++ !!!

Interessant.....A potasser !!! :D nicO.2x45 alias Le_Foudroyeur :)
Répondre à nicO.2x45

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 mamiemando, le lundi 13 novembre 2006 à 16:04:11
Il y a plein d'autrezs classes C++ bien plus intéressantes dans la STL. Notamment les vector, les set, et les map...
Répondre à mamiemando

Résultats pour [C++] Problème déclaration tableau / classes

Creer un tableau dynamique en html (Résolu) bonjour, Je souhaite afficher les éléments d'une BD mysql dans ma page php. Comment créer un tableau dont la taille dépendra du nombre d'éléments qui est variable? www.commentcamarche.net/forum/affich-1795429-creer-un-tableau-dynamique-en-html
Convertir un tableau char[] en char (Résolu) Bonjour, Voici mon problème j'aimerai convertir un tableau char[] en variable char. Est-ce possible si oui comment? PS: Ce projet est a réalisé pour un cour (je dois le rendre le 15.04.2008) et j'y ai déjà consacré une demi journée afin... www.commentcamarche.net/forum/affich-5849628-convertir-un-tableau-char-en-char
Comment copier un tableau excel sur excel (Résolu) Bonjour, je cherche à copier un tableau excel sur une nouvelle feuille excel mais le tableau copié se déforme c-à-dire qu'il me faut à chaque fois revenir pour remettre les colones comme l'original. Comment faire pour que la copie reste... www.commentcamarche.net/forum/affich-3921262-comment-copier-un-tableau-excel-sur-excel

Résultats pour [C++] Problème déclaration tableau / classes

Remplir une ligne ou une colonne avec une suite logiqueVous devez créer un tableau avec le nom des mois dans une ligne ou une colonne : - vous inscrivez au moins 2 mois consécutifs : par exemple, janvier en B4 et février en B5 - vous pointez sur B4, puis en maintenant shift enfoncé, vous pointez B5. ... www.commentcamarche.net/faq/sujet-8654-remplir-une-ligne-ou-une-colonne-avec-une-suite-logique
Mémoriser des constantes sous ExcelVous avez créé votre tableau, et il y a plusieurs constantes plusieurs fois utilisées (TVA, Taux horaire, etc..). Solution basique 1 :vous les inscrivez dans vos formules, ex : =C3*1,196 pour calculer une valeur TTC à partir d'une valeur... www.commentcamarche.net/faq/sujet-8662-memoriser-des-constantes-sous-excel
Les fonctions Ligne, Lignes, Colonne, ColonnesVous avez un tableau et vous l'avez nommé NomTableau (par exemple) avec : INSERTION / NOM / DEFINIR ..... cocher les cases du tableau et nommer le tableau NomTableau (par exemple) Dans ce tableau, vous voulez connaitre, quelque soit son... www.commentcamarche.net/faq/sujet-8646-les-fonctions-ligne-lignes-colonne-colonnes

Résultats pour [C++] Problème déclaration tableau / classes

HTML/Problème dans cellule de tableau (Résolu)Bonjour, J'ai un petit problème. Sur une page de mon site j'aimerais créer une cellule de tableau avec deux animations GIF et entre les deux animations GIF un mot texte, et j'aimerais que tout cela soit parfaitement aligné verticalement... www.commentcamarche.net/forum/affich-7644516-html-probleme-dans-cellule-de-tableau
Besoin aide macro excel créer un tableau (Résolu)Bonjour, je dois créer un tableau a partir de données récupérées sur une feuilles liste la macro doit aller chercher toutes les numéros identiques dans la liste copier la référence et la mettre dans le tableau feuil1 je joint un exemple car je suis... www.commentcamarche.net/forum/affich-8031910-besoin-aide-macro-excel-creer-un-tableau
Shell, creer un tableau en sh (Résolu)Bonjour a tous J'aimerai savoir comment creer un tableau en script shell SH par exemple j'ai une variable contenant str="bonjour comment ca va" je veux le stockuer dans un tableau avec bonjour en 0er element ca en 1eme et va en 2eme... www.commentcamarche.net/forum/affich-4769581-shell-creer-un-tableau-en-sh

Résultats pour [C++] Problème déclaration tableau / classes

Madeinhl présente Creadots, les tableaux lumineux personnalisables(Paris - Relax news) - Créée par l'architecte d'intérieur et créatrice Helen Eastwood et l'ingénieur en informatique Laurent Brun, l'enseigne Madeinhl propose les Creadots, des tableaux lumineux modulaires et créateurs d'ambiance. Chambre, séjour,... www.commentcamarche.net/actualites/madeinhl-presente-creadots-les-tableaux-lumineux-personnalisables-5847042-actualite.php3

Résultats pour [C++] Problème déclaration tableau / classes

VBScript - Les fonctions de manipulation de tableauxLes fonctions de manipulation de tableaux Fonction Description Array(arglist) Crée un Variant contenant un tableau. L'argument arglist est la liste des valeurs, séparées par des... www.commentcamarche.net/contents/vbscript/vbs-fonctions-tableaux.php3
Les tableauxUtilisation de tableaux Il est souvent utile de présenter des informations mieux structurées qu'avec des listes. Les tableaux permettent de les afficher en lignes et en colonnes. Les tableaux sont définis comme étant des suites de lignes. Un... www.commentcamarche.net/contents/html/htmltable.php3
LaTeX - Gestion des tableauxCréation de tableaux Les tableaux permettent une meilleure structuration du document, ce qui rend le document plus compréhensible et plus lisible. LaTeX fournit un environement pour créer des tableaux de façon simple : tabular. Un tableau se... www.commentcamarche.net/contents/latex/latex-tableaux.php3