Tableau[variable] incompatible en C++ ??? :| [Résolu] - C++ - Programmation
Marsh Posté le 19-07-2004 à 00:45:23
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++
Marsh Posté le 19-07-2004 à 01:00:07
schnapsmann a écrit : oui c'est comme ça en C++ |
Oki merci (héhé le C99, c'est nouveau ca )
Edit : Desolé, je ne savais pas que le C99 c'etait un langage.
@++
Marsh Posté le 19-07-2004 à 07:40:02
mais même en C99 ça marche pas ... faut réfléchir 5 minutes les mecs putain
Marsh Posté le 19-07-2004 à 07:40:49
Slide a écrit : Oki merci (héhé le C99, c'est nouveau ca ) |
on a tous vu que t'es resté à l'époque préhistorique avec tes #include et tes jpeg
Marsh Posté le 19-07-2004 à 09:41:20
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
Marsh Posté le 19-07-2004 à 09:51:50
le pire c'est que dans son exemple nbval n'est même pas initialisé
Marsh Posté le 19-07-2004 à 11:01:41
il vaut mieux utiliser std::vector, mais si tu veux le faire à la main, il faudrait que tu fasses ça :
Code :
|
Marsh Posté le 19-07-2004 à 11:12:02
Taz : explique toi stp
Marsh Posté le 19-07-2004 à 11:14:27
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
Marsh Posté le 19-07-2004 à 12:33:24
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...
Marsh Posté le 19-07-2004 à 14:57:25
Taz a écrit : non, faudrait qu'il fasse tout sauf ça |
j'ai bien dis qu'il vaut mieux utiliser std::vector
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
Marsh Posté le 19-07-2004 à 14:59:18
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).
Marsh Posté le 19-07-2004 à 16:33:58
antp a écrit : heu non |
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 !! 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
@++
Marsh Posté le 19-07-2004 à 16:41:30
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.
Marsh Posté le 19-07-2004 à 19:38:11
yawen a écrit : j'ai bien dis qu'il vaut mieux utiliser std::vector
|
je doute que tu maîtrise suffisemment pour détecter des affectations/copie sournoises. alors coplien ou STL
Marsh Posté le 19-07-2004 à 00:43:12
Salut,
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