Bonjour,
* il me semble * avoir vu qu'on peut remplacer par trois points une déclaration de tableau, c.à.d. quand sa teneur n'est pas connue d'avance ?
Et j'arrive plus à retrouver cette déclaration où on utilise ces trois points.
Bonjour,
* il me semble * avoir vu qu'on peut remplacer par trois points une déclaration de tableau, c.à.d. quand sa teneur n'est pas connue d'avance ?
Et j'arrive plus à retrouver cette déclaration où on utilise ces trois points.
Utilise la STL tel que vector ou list
http://cpp.developpez.com/faq/cpp/?page=STL
Les trois points sont uniquement pour les paramètres de fonction : Voir printf(), execl() (POSIX)...
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Ou alors tu te trompes de langage, les trois points pour remplacer le [] étant un sucre syntaxique autorisé en Java.
En C et en C++ on ne peut s'en servir que pour dire qu'une fonction pourra prendre un nombre arbitraire d'arguments. Ce sont des fonctions à ellipse
Toutefois, on pourra avoir ça dans les templates bientôt grâce aux variadic templates.
Mon blog anglais - Mes articles et critiques de livres - FAQ C++0x, avec liste des nouveautés - Conseils sur le C++ - La meilleure FAQ du monde - Avant de créer des classes que vous réutiliserez, regardez si ça n'existe pas déjà - Le site du comité de normalisation du C++
Le guide pour bien débuter en C++ - Cours et tutoriels pour apprendre C++
Les trois points servent aussi dans les exceptions.
Ils signifient que le bloc catch attrapera toute exception lancée.
Exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 #include <iostream> void foo() { throw 2; } int main(int argc, char const *argv[]) { try{foo();} catch(...){std::cout<<"A"<<std::endl;} return 0; }
"Never use brute force in fighting an exponential." (Andrei Alexandrescu)
Mes articles dont Conseils divers sur le C++
Une très bonne doc sur le C++ (en) Why linux is better (fr)
Partager