Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2507 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Tableau[variable] incompatible en C++ ??? :| [Résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Tableau[variable] incompatible en C++ ??? :| [Résolu]

n°799114
Slide
Posté le 19-07-2004 à 00:43:12  profilanswer
 

Salut,
 
http://img18.exs.cx/img18/4204/constantes.jpg
 
Je voudrais savoir dites moi, pourquoi ca me sort ca ? En Pascal ce genre de manipulation passait impeccablement me semble t'il, à moins que je me trompe.
 
C'est une specification au C++, pourquoi ce genre de manip marcherait qu'en Delphi ?
 
Merci.


Message édité par Slide le 19-07-2004 à 20:49:31
mood
Publicité
Posté le 19-07-2004 à 00:43:12  profilanswer
 

n°799115
schnapsman​n
Zaford Beeblefect
Posté le 19-07-2004 à 00:45:23  profilanswer
 

oui c'est comme ça en C++
en C99 il y a les variables length array, mais bon...
 
utilise plutot le std::vector en C++


---------------
From now on, you will speak only when spoken to, and the first and last words out of your filthy sewers will be "Sir!"
n°799119
Slide
Posté le 19-07-2004 à 01:00:07  profilanswer
 

schnapsmann a écrit :

oui c'est comme ça en C++
en C99 il y a les variables length array, mais bon...
 
utilise plutot le std::vector en C++


 
Oki merci ;) (héhé le C99, c'est nouveau ca :D)
 
Edit : Desolé, je ne savais pas que le C99 c'etait un langage.
 
@++


Message édité par Slide le 19-07-2004 à 17:37:48
n°799150
Taz
bisounours-codeur
Posté le 19-07-2004 à 07:40:02  profilanswer
 

mais même en C99 ça marche pas ... faut réfléchir 5 minutes les mecs putain :o

n°799151
Taz
bisounours-codeur
Posté le 19-07-2004 à 07:40:49  profilanswer
 

Slide a écrit :

Oki merci ;) (héhé le C99, c'est nouveau ca :D)
 
@++

on a tous vu que t'es resté à l'époque préhistorique avec tes #include et tes jpeg

n°799198
blackgodde​ss
vive le troll !
Posté le 19-07-2004 à 09:41:20  profilanswer
 

nbval est une variable dont la valeur n'est pas connue a la compilation ... le tableau ne peut donc pas être construit.
 
#include <iostream> #include <cstdlib> sinon


Message édité par blackgoddess le 19-07-2004 à 09:54:40

---------------
-( BlackGoddess )-
n°799218
jagstang
Pa Capona ಠ_ಠ
Posté le 19-07-2004 à 09:51:50  profilanswer
 

le pire c'est que dans son exemple nbval n'est même pas initialisé [:joce]


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°799365
yawen
Posté le 19-07-2004 à 11:01:41  profilanswer
 

il vaut mieux utiliser std::vector, mais si tu veux le faire à la main, il faudrait que tu fasses ça :
 

Code :
  1. class calcul { //note : en général on met des majuscules aux noms de classes...
  2. int nbval;
  3. int *val;
  4. public:
  5. calcul(int _nbval) {nbval=_nbval;val=new int[nbval];};  //création du tableau à la taille demandée
  6. ~calcul() {if(val) delete[] val;};  //si le tableau existe encore, il faut le détruire,  
  7.                  //car un tableau construit avec new n'est pas détruit automatiquement
  8. };


Message édité par yawen le 19-07-2004 à 11:02:24
n°799380
Taz
bisounours-codeur
Posté le 19-07-2004 à 11:07:12  profilanswer
 

non, faudrait qu'il fasse tout sauf ça :o

n°799394
jagstang
Pa Capona ಠ_ಠ
Posté le 19-07-2004 à 11:12:02  profilanswer
 

Taz : explique toi stp


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
mood
Publicité
Posté le 19-07-2004 à 11:12:02  profilanswer
 

n°799400
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 19-07-2004 à 11:14:27  profilanswer
 

je suppose que Taz préconise d'utiliser un conteneur de la STL, qui évitera justement à Slide de se casser le cul à gérer  l'allocation et la libération de la mémoire


---------------
J'ai un string dans l'array (Paris Hilton)
n°799402
Taz
bisounours-codeur
Posté le 19-07-2004 à 11:14:30  profilanswer
 

ben le pauvre Coplien il se retourne dans sa tombe

n°799504
Ace17
Posté le 19-07-2004 à 12:33:24  profilanswer
 

Il manque déja l'opérateur d'affectation, le constructeur par défaut, le constructeur par recopie, et il faut que le destructeur soit virtuel...
Quant a Coplien, je savais pas qu'il était mort...


Message édité par Ace17 le 19-07-2004 à 12:33:57
n°799533
Taz
bisounours-codeur
Posté le 19-07-2004 à 13:09:24  profilanswer
 

j'en sais rien en fait

n°799611
yawen
Posté le 19-07-2004 à 14:57:25  profilanswer
 

Taz a écrit :

non, faudrait qu'il fasse tout sauf ça :o


j'ai bien dis qu'il vaut mieux utiliser std::vector  :D  
 
je mettais juste ça puisque slide n'a pas l'air de connaitre du tout comment fonctionnent les tableaux en C
 

Citation :

Il manque déja l'opérateur d'affectation, le constructeur par défaut, le constructeur par recopie, et il faut que le destructeur soit virtuel...


tout à fais d'accord, mais ça dépend ce qu'il veut faire de sa classe... s'il n'en dérive rien, qu'il n'en fait pas de copie, et qu'il n'en fait des instances qu'avec le constructeur que j'ai mis, ça marche... mais c'est vrai que j'aurais dû préciser que mon exemple était incomplet  :jap:

n°799616
antp
Super Administrateur
Champion des excuses bidons
Posté le 19-07-2004 à 14:59:18  profilanswer
 

Slide a écrit :

En Pascal ce genre de manipulation passait impeccablement me semble t'il, à moins que je me trompe.


 
heu non
en Delphi tu fais ça il va aussi râler.
Ce que tu peux faire en Delphi c'est déclarer des tableaux sans taille (tableaux dynamiques), mais pas donner une taille issue d'une variable (venant d'une constante par contre ça passe évidemment).


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°799725
Slide
Posté le 19-07-2004 à 16:33:58  profilanswer
 

antp a écrit :

heu non
en Delphi tu fais ça il va aussi râler.
Ce que tu peux faire en Delphi c'est déclarer des tableaux sans taille (tableaux dynamiques), mais pas donner une taille issue d'une variable (venant d'une constante par contre ça passe évidemment).


 
Heu, j'ai du me melangé les pinceaux, c'est bien des tableaux dynamiques, mais c'est dommage que ca roule pas avec une variable, merci ANTP (et tout les autres!!), c'est la 1er fois que je fais du C++, et du Delphi j'en ai fait juste un peu, je ne suis pas un AS je l'admet, je sais bien aussi que je ne suis pas une fleche, on a tous fait des erreurs !! :D Et c'est certain que j'en fairrais d'autre ;)
 
Heu au faite, le C99, c'est un langage ?! Je pensais a une erreur de frape au debut.
 
Ps : Il faut bien apprendre un jour ou l'autre :)
 
@++

n°799739
antp
Super Administrateur
Champion des excuses bidons
Posté le 19-07-2004 à 16:41:30  profilanswer
 

C99 c'est la version du C datant de 1999, donc pas prise en compte par les vieux compilateurs C (ni par les compilateurs C++, du moins pas ceux de Borland).
 
Sinon comme ça a été suggéré dans le topic, std::vector c'est pas mal pour les tableaux dynamiques.

n°799906
Taz
bisounours-codeur
Posté le 19-07-2004 à 19:38:11  profilanswer
 

yawen a écrit :

j'ai bien dis qu'il vaut mieux utiliser std::vector  :D  
 
je mettais juste ça puisque slide n'a pas l'air de connaitre du tout comment fonctionnent les tableaux en C
 

Citation :

Il manque déja l'opérateur d'affectation, le constructeur par défaut, le constructeur par recopie, et il faut que le destructeur soit virtuel...


tout à fais d'accord, mais ça dépend ce qu'il veut faire de sa classe... s'il n'en dérive rien, qu'il n'en fait pas de copie, et qu'il n'en fait des instances qu'avec le constructeur que j'ai mis, ça marche... mais c'est vrai que j'aurais dû préciser que mon exemple était incomplet  :jap:

je doute que tu maîtrise suffisemment pour détecter des affectations/copie sournoises. alors coplien ou STL


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Tableau[variable] incompatible en C++ ??? :| [Résolu]

 

Sujets relatifs
Incrémenter le nom d'une variableTransmettre une variable sans url et formulaire
[PHP] Ajouter une variable à la Query_String[Résolu] Une erreur est survenue : voulez vous effectuer un débogage?
[résolu] Aide pour webmaster debutantProblème avec un unlink() ... [Résolu][Juste un "s" en +, trop bete]
[Résolu] Insérer variable dans "value" dans un formulaire[ASP] Variable globale ?
[Résolu] Insérer variable dans une URL ! 
Plus de sujets relatifs à : Tableau[variable] incompatible en C++ ??? :| [Résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR