[C++] Initialiser un tableau bidimensionnel
zzzer
Messages postés
938
Statut
Membre
-
pamputt -
pamputt -
Bonjour,
J'ai, dans une classe, un tableau déclaré comme ceci :
Merci d'avance !
--
N'oubliez pas de marquer la discussion comme résolue dès que c'est le cas ! -> En haut de la page, Statut: Résolu
Attention aussi à bien respecter la 6e règle de la charte :
J'ai, dans une classe, un tableau déclaré comme ceci :
static bool dejaUtilisees[13][4];Et j'aimerais savoir s'il est possible d'initialiser tous ses éléments sans faire de boucle, avec un truc du genre
static bool dejaUtilisees[13][4] = {false, false};(ceci ne fonctionnant pas).
Merci d'avance !
--
N'oubliez pas de marquer la discussion comme résolue dès que c'est le cas ! -> En haut de la page, Statut: Résolu
Attention aussi à bien respecter la 6e règle de la charte :
Rédiger les messages dans un langage clair sans abréviation, style télégraphique ou mode SMS
Configuration: Windows XP Firefox 3.0.1
5 réponses
-
effectivement, initialiser avec une boucle est plus simple et permet de mettre des conditions. sinon je pense que
dejaUtilisé[][]=false peut marche, mais de là à être sur...
sinon ça serait plutôt dejaUtilisé{false}{false} mais bon, de part sa nature, le tableau bi dimenntionnel ne l'accepte pas à mon avis donc je te conseil de t'en remettre à la boucle ce qui est très simple, et de toute façon, ça ne ralentit pas l'ordinateur (en effet il la fera de toute manière...) -
Mais comment faire en sorte que ce tableau soit initialisé dès le chargement de la classe, avec une boucle ?
En gros, où la mettre ?
-
bah pour l'initialiser 2 cas
=>tu veux qu'ils aient tous la même valeur (ex true/false, 0)
typedevariable tontableau[][]=new typedevariable[nb1erindice][nb2emeindice]; int i; int j; for(i=0;i<tonindice2;i++){ for(j=0;j<tonindice1;j++){ tontableau[j][i]=false/0 } }
=>si tu veux que certaines valeur ne soient pas 0 (mais bon, je te déconseille, seulement si tu as vraiment besoin d'initialiser une case à autre chose que 0)typedevariable tontableau[][]=new typedevariable[nb1erindice][nb2emeindice]; int i; int j; for(i=0;i<tonindice2;i++){ for(j=0;j<tonindice1;j++){ if(j==lavaleurspécialedej && i==lavaleurspécialedei){ tableau[j][i]=la valeur autre que 0 } else { tableau[j][i]=0 } } } -
bah dès que tu as déclaré le constructeur, c'est bon ce me semble
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -