intialisation d'un Vector - C++ - Programmation
Marsh Posté le 16-11-2013 à 23:12:02
Regarde du côté de std::initializer_list (possible que ça soit C++11 only) pour l'initialisation avec les brackets.  
 
 
Sinon, faut que tu procèdes comme ça :  
 
| Code : 
 | 
 
 
Les caractères sont simplement un entier sur un seul octet, c'est lors de l'affichage que ça sera interprété et affiché comme une lettre. 
L'alphabet est contigu : 
a = 97 
b = 98 
etc etc. 
 
Ceci-dit, je vois mal l'utilité (bon, je connais pas le reste de la fonction  ) de stocker les lettres dans un vector.
) de stocker les lettres dans un vector. 
Si tu veux t'en servir comme un tableau, tu peux faire ça :  
 
| Code : 
 | 
 
  
 
Marsh Posté le 17-11-2013 à 00:17:37
| skn a écrit : moi j'arrive pas à comprendre où il est le problème !   | 
 
Le problème, c'est que tu n'a pas été lire la doc de std::vector et voir quel constructeurs sont possibles. Si tu lis cette doc ici ou la, tu constateras qu'aucun constructeur n'admet ce que tu veux passer comme paramètre. 
 
 
| Terminapor a écrit : Regarde du côté de std::initializer_list (possible que ça soit C++11 only) pour l'initialisation avec les brackets.  | 
En utilisant l'aggregate initialization de C++11 on peut faire: 
std::vector<char> caracter {{'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','y','z'}}; 
 
(ça doit revenir a faire std::vector<char> caracter(std::initializer_list<char>({'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','y','z'})); mais avec une écriture un peu moins lourde). 
 
Un petit exemple pour tester: 
| Code : 
 | 
 
 
| C:\clang>g++ -std=c++11 -o vectest.exe vectest.cpp  | 
 
 
Mais bon, ça n'a aucun intérêt d'utiliser std::vector ici: pour qque chose comme l'alphabet, qui est de taille invariable, il y a std::array. 
std::array<char, 26> caracter {{'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','y','z'}}; 
 
A+,
Marsh Posté le 16-11-2013 à 21:50:54
Bonsoir,
 
  
Chaque fois je veux initialiser un vecteur,le compilateur m'indique une erreur: [i]error expected primary-expression before '{' token[/i] .
moi j'arrive pas à comprendre où il est le problème !
quelqu'un peut m'aider SVP!?
Merci d'avance;
Message édité par skn le 16-11-2013 à 21:54:36